<div dir="ltr">Hello,<div><br></div><div>Today we hit another VS 2013 breakage <<a href="http://lab.llvm.org:8011/builders/sanitizer-windows/builds/26666/steps/run%20tests/logs/stdio">http://lab.llvm.org:8011/builders/sanitizer-windows/builds/26666/steps/run%20tests/logs/stdio</a>> which results us having to alter LLVM.</div><div><br></div><div>While we have no documented policy of supporting two version of MSVC, we do have an informal agreement that we should support the last two versions.</div><div><br></div><div>I suggest that we alter our informal policy to the following:</div><div><br></div><div>"If a compiler version keeps getting in the way and a newer compiler is available, we should ask people to upgrade to that newer compiler."<br></div><div><br></div><div>If we can support ten versions of MSVC with little burden, I don't see a reason why we shouldn't.</div><div><br></div><div>But if we find ourselves in a situation where asking folks to upgrade to a compiler which has been widely deployed soothes development for the greater LLVM community, we should consider dropping support for the older versions of that compiler.</div><div><br></div><div>In this case, dropping VS2013 allows us to use more C++11 features with confidence.  Notably, move constructors will be synthesized instead of having to be manually written (and kept in sync with data members getting added).</div><div><br></div><div>What do you all think?  Are folks still stuck on VS2013?</div><div><br></div><div>Thanks,</div><div>David</div></div>