哪些C#编译器错误没有记录?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了哪些C#编译器错误没有记录?相关的知识,希望对你有一定的参考价值。

这是一个未记录的可能的C#编译器错误的集合。

如果您遇到这样的错误,请在此处发布回答:

  • 错误号(CSnnnn)
  • 相关的错误消息
  • 如果可能的话,会产生一小段代码,会产生错误

Example:

CS0224:

使用vararg的方法不能是通用的,可以是泛型类型,也可以是params参数

Produced by:

int Foo<T>(__arglist) { return 0; }

如果有人已发布列出您遇到的错误的答案,请编辑该答案以添加其他详细信息。

The list of documented errors can be found on MSDN。似乎有很多人失踪......

答案

在编译器字符串资源表中找到,但在MSDN Library索引中找不到。其中许多肯定是过时的,有些闻起来像有趣的无证功能,如支持模块和测试。检查CS2000:

CS0018:运营商'xxx'尚未实施 CS0240:'xxx'不能同时抽象和密封(现为CS0418) CS0679:其他语言可能允许覆盖内部虚拟成员“xxx” CS0767:无法使用指定的类型参数继承接口'xxx',因为它导致方法'yyy'包含仅在ref和out上有所不同的重载 CS0846:表达式树可能不包含使用可选参数的调用或调用 CS0847:表达式树可能不包含索引属性 CS0848:索引属性“xxx”具有必须提供的非可选参数 CS0849:索引属性“xxx”必须具有所有可选参数 CS0850:“xxx”的部分声明必须具有相同顺序的相同类型参数名称和方差修饰符 CS0851:使用'is'来测试与'dynamic'的兼容性与测试与'object'的兼容性基本相同,并且对所有非null值都是成功的 CS1114:嵌入式互操作类型'xxx'上的成员'yyy'在调试时无法评估,因为它从未在程序中引用。在调试时,请考虑首先将源对象强制转换为“dynamic”,或者将“Embed Interop Types”属性设置为false CS1543:添加模块'xxx'有未解析的类型'yyy'的引用 CS1544:添加了未添加的模块'yyy'引用模块'xxx' CS1595:委托'xxx'有一些无效的参数 CS1735:忽略/ win32manifest for module,因为它仅适用于程序集 CS1736:无法将'xxx'转换为委托,因为块中的某些返回类型不能隐式转换为委托返回类型 CS1737:预期参数 CS1738:在指定了所有固定参数后,必须出现命名参数规范。请使用语言版本7.2或更高版本以允许非尾随主要参数。 CS1739:/ appconfig给出的文件名太长或无效。在Roslyn(C#v6)中重新使用:'M'的最佳重载没有名为'x'的参数。 CS1903:为'/ test'选项提供了无法识别的值'xxx' CS1904:'xxx'不是有效的警告编号

另一答案

CS1669:

__arglist在此上下文中无效

由。。。生产:

delegate int Bar(__arglist);
另一答案

CS0002:

无法从资源加载消息字符串

由。。。生产:

很可能是由于字符串表资源损坏或完全丢失cscui.dll所以它无法显示任何错误消息。参考问题is here

另一答案

更像Leppie的例子,可以在编译器字符串资源表中找到,并且可能是由未记录的关键字触发的:

CS0190:__ arglist构造仅在变量参数方法中有效 CS0224:使用vararg的方法不能是通用的,可以是泛型类型,也可以是参数数组 CS0257:__arglist参数必须是形式参数列表中的最后一个参数

另一答案

SES 1738:

在指定了所有固定参数后,必须出现命名参数规范。请使用语言版本7.2或更高版本以允许非尾随主要参数。

由。。。生产

string str = GetNewString(isAllowed: isUserAllowed, str);

可能的解决方案:升级到C#7.2或更高版本

右键单击要升级的项目 - >属性 - >构建 - >高级 - >语言版本。

Upgrade to latest minor version of C#

以上是关于哪些C#编译器错误没有记录?的主要内容,如果未能解决你的问题,请参考以下文章

错误记录Android Studio 编译报错 ( Could not determine java version from ‘11.0.8‘. | Android Studio 降级 )(代码片段

如何有条件地将 C 代码片段编译到我的 Perl 模块?

提效小技巧——记录那些不常用的代码片段

C语言写的链表。明明没有错误,为啥编译器还会报错,?而且还爆出100+的错误,求解。

魔法记录未编译

c ++ std :: sort intel编译器错误:访问冲突