DRY out SetCallback definitions with a macro
Change ; to , in version warning message