A MS only run time problem, because the init function for template static member is not getting called when the template static member is not reference. To be able to evoke the init function, MS put the template static member in the linker directive section, that cause init function gets call. As Reid suggest; add template static data member to llvm.used that cause compiler to emit a similar -include directive into the linker directive section.
The bug is report in:
//bugs.llvm.org/show_bug.cgi?id=40323
We might really want isOSBinFormatCOFF, since I think the same issue affects Windows Itanium with -OPT:REF and LLD.