Macro protected with the do { } while (0)

"Good practice" that will allow devs to use EXLOG macro inside a one line "if" (not delimited by '{') and have no problem with "else" :
http://stackoverflow.com/questions/1067226/c-multi-line-macro-do-while0-vs-scope-block