在安装Roslyn之后,为什么我的IDE会抱怨新语法?

Sel*_*enç 6 c# resharper compiler-errors roslyn visual-studio-2013

我正在使用Visual Studio 2013,我写这个简单的代码:

class Program
{
    private static void Main(string[] args)
    {
        Console.WriteLine(string error = "Hello world!");
    }
}
Run Code Online (Sandbox Code Playgroud)

显然这不是一个有效的C#代码,但奇怪的部分是即使我看到两个错误,代码正在编译并正常工作:

在此输入图像描述

我认为migth是相关的Roslyn 因为我安装了Roslyn User Preview和其他扩展,但我正在使用的项目模板是标准Console Application模板.那么,为什么这个代码正在编译,即使有三个编译器错误?我试过这个VS 2012并且它没有编译.是编译器错误,还是在下一个版本中有效C#

这是我看到的错误列表VS 2012:

在此输入图像描述

但肯定没有错误VS 2013.

注意:我不确定它是否相关,但我也在使用Resharper.

Nea*_*ter 10

欢迎来到未来!这些"声明表达式"正在考虑用于下一版本的C#,如果您使用的是Roslyn预览版,则可以提前试用它们.


svi*_*ick 7

在VS 2013中使用Roslyn但没有ReSharper,代码编译得很好,我没有看到任何错误或波形.

这是预期的行为,因为当前的Roslyn预览支持此提议的C#6.0功能.

如果我启用ReSharper,我会开始看到波形,但错误列表窗口中没有错误,代码仍然可以正常编译.

也是预期的行为,因为当前版本的R#对C#6.0功能没有任何支持(为什么会这样?).

所以,你看到来自R#的波浪形,但VS可以正常使用代码.

如果您想尝试提出的C#6.0功能,我建议您暂时禁用R#.