target:add("cxxflags","/wd5027")-- 'type': move assignment operator was implicitly defined as deleted
target:add("cxxflags","/wd5045")-- compiler will insert Spectre mitigation for memory load if /Qspectre switch specified
target:add("cxxflags","/wd5053")-- support for 'explicit(<expr>)' in C++17 and earlier is a vendor extension
target:add("cxxflags","/wd5105")-- macro expansion producing 'defined' has undefined behavior (workaround for older msvc bug)
target:add("cxxflags","/wd5204")-- 'type-name': class has virtual functions, but its trivial destructor is not virtual; instances of objects derived from this class may not be destructed correctly
target:add("cxxflags","/wd5220")-- 'member': a non-static data member with a volatile qualified type no longer implies that compiler generated copy / move constructors and copy / move assignment operators are not trivial