安装Visual Studio 2015会更改VS 2013使用的编译器吗?

Col*_*nic 6 .net c# visual-studio visual-studio-2015

Visual Studio 2013使用什么C#编译器?如果我使用新的Roslyn编译器安装Visual Studio 2015,会影响我的Visual Studio 2013安装吗?

我问,因为当我们的代码使用Visual Studio 2015构建时,我们有一些已知失败的测试.有些数字在八位有效数字上有所不同.Visual Studio 2015发布时的解决方案可能是增加测试的容差,但我想了解Visual Studio如何决定使用哪个编译器.

可以将Visual Studio 2013显式设置为使用旧编译器吗?还是一个msbuild脚本?

Flo*_* S. 10

Visual Studio 2013使用什么C#编译器?如果我使用新的Roslyn编译器安装Visual Studio 2015,会影响我的Visual Studio 2013安装吗?

安装Visual Studio 2015 Preview不会影响Visual Studio 2013的安装,并且不会替换Windows目录中的.NET Framework安装文件夹中的旧C#和VB编译器.相反,Visual Studio 2015 Preview使用并包含下一版本的Microsoft Build Tools MSBuild 14.0的预览版,该版本安装在\ MSBuild\14.0下的32位Program Files文件夹中,并包含新的Roslyn编译器和代码分析库.

对于C++,没有任何重大变化,并且由于编译器位于特定Visual Studio安装的\ VC\bin子文件夹中,因此它们不会相互影响.

可以将Visual Studio 2013显式设置为使用旧编译器吗?还是一个msbuild脚本?

这是没有必要的,因为Visual Studio 2013只能使用旧的编译器,除非您安装并启用了Roslyn CTP扩展,现在它已经过时了.


Col*_*nic 8

否.安装Visual Studio 2015不会更改VS 2013使用的编译器.在命令行中,您可以通过运行相应的选项来进行选择 msbuild.exe

测试失败是由.NET Framework 4.6引起的,而不是编译器的更改.

通过COMPLUS_useLegacyJithttps://github.com/Microsoft/dotnet/blob/master/docs/testing-with-ryujit.md设置'使用旧版JIT'环境变量来解决此问题