macro to create unique id in compile time