must_swap
extern int must_swap(void);
#define might_swap(x) (must_swap() ? swap(x) : (x))
if (must_swap()) {
if (must_swap()) {
int must_swap(void);
int swapping = must_swap();