new _unused() macro to deal with unused arguments
as MSVC doesn't like the void trick.