fix build by adding semicolons to macros; deal with copy warning lint