Mike Frysinger wrote: > it depends completely on how the macro is intended to be used. if you > want to maintain the "this macro has a return value", then you have to > use ({...}). if you want the macro to return a void, then you have to > use do{...}while(0).
Actually no. The difference is do {...} while(0) is a _statement_ and cannot be used in an expression. Whereas a void value can be used in expressions like A?B:C, (A,B) and returned from a function, it just has type void. -- Jamie -- To unsubscribe from this list: send the line "unsubscribe linux-embedded" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html