
18 Jul
2005
18 Jul
'05
4:32 p.m.
Chris Uzdavinis wrote:
Chris Uzdavinis <chris@uzdavinis.com> writes:
Please consider this simple example: ... #define LOG(X) log((X), __FILE, __LINE__)
Oops. The typo on __FILE was an accident, and I hope it won't be a distraction from the example I was trying to make.
This is not a namespace-level macro. It expands to an expression. An expression macro must not contain a trailing semicolon because it can be used in contexts where a semicolon is illegal: static int dummy = LOG(something), 1;