Code:
#define DO(statement) if (1 || (statement)) {}

void myfunc(var i, var j, char *c, STRING* str, PANEL* p)
{
    DO(i=3)
    DO(str = str_create())
    //...
}


so no semicolons needed any more...