code-analysis相关内容

如何从 Objective-C 代码中提取 AST?

我需要分析Objective-C静态代码,主要是AST,在查看可能的工具后发现LLVM的Clang工具可以转储AST,所以我用终端用这个命令测试它: clang -cc1 -ast-dump ~/SomeTest.m 但我收到此错误: 在/Users/myusername/SomeTest.m:9 包含的文件中:/Users/myusername/SomeTest.h:9:9: 致命错误:找 ..
发布时间:2021-11-26 17:42:48 移动开发

将代码分析与 Visual Studio DNX 项目 (.xproj) 结合使用

在“普通"Visual Studio 项目 (.csproj) 的属性中,可以说Enable Code Analysis on Build(以前称为 FxCop). 自从我开始尝试新的 DNX 项目 (.xproj) 以来,我一直在寻找类似的东西.我知道可能没有构建输出,所以旧方法可能并不真正适合于此,但我很确定代码分析/FxCop 规则仍然适用.此外,应该有一些方法可以在新的“实际"项目文 ..
发布时间:2021-11-24 17:41:36 C#

“WinMain"的注释不一致

我正在努力使我的代码尽可能完美,并且我已经清除了所有错误和(其他)警告.我只剩下这两个: 警告 C28253 'WinMain' 的注释不一致:_Param_(2) 在此实例上具有 'SAL_null(__no)'.警告 C28252 'WinMain' 的注释不一致:_Param_(2) 在前一个实例上具有 'SAL_null(__maybe)'. 这是我的 WinMain 函数 int ..
发布时间:2021-09-18 19:37:34 其他开发

CA2227 的解决方案或更好的方法?

我仅使用代码分析来清理、组织和确保针对特定警告的所有实例全局执行这些更改.我进入决赛了,它是 CA2227. CA2227 集合属性应该是只读的 将 '' 更改为通过删除属性设置器实现只读. 请注意,这是用于 EDI 文档的映射.这些类将代表整个或部分 EDI 文档. 公共类PO1Loop{公共 SegmentTypes.PO1LoopSegmentTypes.PO1 PO1 { 获 ..
发布时间:2021-09-18 19:33:17 其他开发

从 Net Beans 8 PHP 代码分析中排除文件夹

在过去一年左右的时间里,我一直在使用 Net Beans 8 进行 PHP 开发,并且发现(自更新到 8.0 并生成新项目以来)代码分析器检测到我们使用的一些免费库中的错误,这反过来会导致项目被标记为有错误(项目浏览器上的红色感叹号). 由于我们不维护这些库,我将它们添加到我当前项目的项目属性 -> 忽略的文件夹 -> 代码分析的额外文件夹 设置中(我不想排除它们来自项目,因为我们使用了 I ..
发布时间:2021-06-07 19:16:37 其他开发

.ToString()和.ToString(CultureInfo.CurrentCulture)

例如,我必须在每个数字中使用 .ToString(CultureInfo.CurrentCulture)进行字符串转换.我是否可以以某种方式覆盖 .ToString(),以便在字符串转换中不再收到像区域性这样的消息? 例如,现在我必须更改每一个 myNumValue.Count.ToString(); 到 myNumValue.Count.ToString(CultureInfo ..
发布时间:2021-04-22 20:39:57 其他开发

在Roslyn(Microsoft CodeAnalysis)中,如何创建布尔文字?

通常我会使用SyntaxFactory,但无法弄清楚如何用它创建一个真或假节点. 解决方案 我刚刚弄清楚了.true和false是关键字,我不必过多地处理关键字,因此我在寻找错误的地方.关键字显然倾向于依靠拥有自己的SyntaxKind. SyntaxFactory.LiteralExpression(SyntaxKind.TrueLiteralExpression); 搜索了最后 ..
发布时间:2021-04-22 20:39:54 其他开发

任何避免警告C6386的方法,而无需完全禁用它或代码分析

默认情况下,Visual Studio 2019开始将代码分析警告显示为编辑器内的绿色花键.这些对于学习C编程的学生可能非常有用,因为它们会捕获经典错误,例如被一个数组访问关闭. 不幸的是,误报可能会完全破坏学习体验,并且我担心我将不得不要求学生禁用该功能,以避免让他们担心不存在的问题. 此简短代码段不会引起任何警告: #includeint main(无效) ..
发布时间:2021-04-22 20:39:50 其他开发

如何使用Roslyn查找变量的先前用法?

我正在写一个Rosyln分析器/分析器.它检查以确保在访问类型上的另一个(潜在危险)方法之前已调用一个方法.为了说明我的意思,下面是一些我想分析并失败的错误代码: private void myMethod(){var myThing = new MyThing();myThing.Value = null;字符串值= myThing.GetValue();//由于内部值为null,因此代码在 ..
发布时间:2021-04-22 20:39:47 其他开发

如何在PHP中执行静态代码分析?

是否有用于PHP源文件的静态分析工具? 二进制文件本身可以检查语法错误,但是我正在寻找功能更多的东西,例如: 未使用的变量分配 未先初始化就分配给它们的数组 以及可能的代码样式警告 ... 解决方案 从命令行以lint模式运行 php 以验证语法而无需执行: php -l文件名 高级静态分析器包括: php-sat -需要 http://stratego ..
发布时间:2021-04-22 20:39:42 其他开发

找不到类型或名称空间&& quot;您是否缺少程序集引用" ;?虽然所有参考文献都是正确的

我正在尝试使用 MSBuildWorkspace类.我的项目中有所有程序集引用.当我在对象浏览器中打开引用时,我会看到要使用的名称空间和类.但是在我下面的using语句中, 使用Microsoft.CodeAnalysis.MSBuild 我得到 类型或名称空间名称"MSBuild"在名称空间"Microsoft.CodeAnalysis"中不存在(您是否缺少程序集引用?) 可笑 ..
发布时间:2021-04-18 19:50:17 其他开发

使用Timer计时C#代码

即使从算法分析和Big-Oh方面检查代码性能还是不错的!表示法我想看看在我的PC上执行代码要花多少钱.我已经将List初始化为9999count,甚至从其中删除了元素.可悲的是,执行此操作的时间跨度似乎是 0:0:0 .结果令人惊讶,我计时执行的方式一定有问题.有人可以帮助我确定代码的正确时间吗? IList来源=新的List(100);对于(int i = 0; i ..
发布时间:2021-04-02 20:48:34 其他开发

Sonarqube没有注册任何C#问题

可能与此问题相似,但自此以来已经为上一个版本提供了答案,我为此提出了一个新问题. 尽管我有意将代码气味放入我的资源中,但sonarqube并未记录任何问题.分析报告已生成( 101 KB ),已成功压缩并上传.从扫描仪一侧执行是成功的. 开发配置: IDE:Visual Studio Enterprise 2015 v14.0.25425.01 更新3 框架: v4.6.010 ..
发布时间:2021-04-01 20:49:10 其他开发

禁用pylint警告消息

使用 pylint 检查代码会显示很多有关变量名称的消息,如下所示: 类型方法的名称“ getCurrentChannel”无效(应匹配 [a-z _] [a-z0-9 _] {2,30} $) 如何禁用这些消息? 解决方案 pylint --disable = C0103文件名 运行此命令不会显示“无效变量名”的消息。 ..
发布时间:2020-10-04 19:15:21 其他开发

找出CsElement是否为静态字段? (StyleCop自定义规则)

如何查询CsElement对象以查看元素是否为静态字段? 我正在为成员字段构建一对m_和s_前缀规则和静态字段。 解决方案 您绝对应该看看 StyleCop + 。它已经包含您要创建的所有命名规则。 此外,它是开源的。因此,您可以在其中找到许多不同代码分析案例的示例(查找所有静态字段,成员字段等)。 ..
发布时间:2020-10-04 19:15:18 其他开发

如何解决“不要覆盖Object.finalize()方法”的问题。问题

最近,我找到了一个工具[SonarQube]来帮助我发现代码中的潜在威胁,我已经解决了该工具报告的所有问题。 但是,这也给我带来了“被保护的void finalize()”方法的潜在威胁问题,该方法已被我覆盖,该工具向我显示一条消息“请勿覆盖Object.finalize()方法”。 任何人都可以帮我解决这个问题的方法,重写的方法还包括一些业务逻辑。 解决方案 从不。决不! 从 ..
发布时间:2020-10-04 19:15:13 其他开发