On Wed, Jan 21, 2009 at 1:13 PM, Fernando Apesteguía < [email protected]> wrote:
> On 1/21/09, debian developer <[email protected]> wrote: > > I don't seem to understand this patch. What is swap(a, b) returning here? > > and where is it returning from? > > It is not "returning" but substituting, cause it's a macro, not a > function. It swaps the values of "a" and "b". > > > > > > > The reason I ask it that I wonder why swap() has a return value? > ^^^^^^^^^^^^^^^^ that was the reason I asked where it is returning :) With a macro without do-while: if(condition) swap(a, b) will be if(condition) ({ ...; ...; } ) I still see all the lines being executed in case the condition is true.
