Currently if we define an Macro with empty parentheticals, it crashes when we try to call it
i.e.
#define M() 1
int main()
{
#if M()
std::cout <<"call to with parentheses" << std::endl;
#endif
return 0;
}
returns pepper.symbol_table.PepperSyntaxError: Macro M expects args, but was given none.
but should be valid