Need to be variadric macro to support commas in expression