Casto se setkavam napr. s takovouto konstrukci makra #define __RETURN(GSM, val) do { (GSM)->RetVal = (val); return (val); } while (0) Proc se to uzavira do cyklu do...while s jednou iteraci a ne jen do bloku?