MSVC generates different symbols for class vs struct, confusing the linker.