stevens (09/23/82)
The trick I use is to define the macro like this: #define mymacro if (e1) s1; else -or- #define mymacro if (e1) {s1;} else Then both mymacro; -and- if (whatever) mymacro; else stmt; work like you would expect. This also works for things like: #define TRACE(stmt) if (tracing) {stmt;} else so you can do TRACE(printf("Got to this point.\n")); --Scott Stevens inuxd!stevens