Jędrzej Dudkiewicz wrote: >> > #define SWAP(TYPE, A, B) do { TYPE tmp = a; b = b; b = tmp; } while (0) >> >> Err, >> #define SWAP(TYPE, A, B) do { TYPE tmp = a; a = b; b = tmp; } while (0) > > Seems that > > #define SWAP(TYPE, A, B) do { TYPE tmp = A; A = B; B = tmp; } while (0) > > would be even better. No kidding. :-) Andrew.