问题标签 [static-code-analysis]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
9366 浏览

.net - 如何从 MSBuild 指定规则集

升级到 VS 2010 MSBUILD /p:RunCodeAnalysis=true 后无法按预期工作

为了获得更快的构建,我们删除了 DEBUG 构建的 CODE_ANALYSIS 常量。但这意味着在运行上述 msbuild 命令时,它默认所有规则,而不是使用我们在项目属性页面的“代码分析”选项卡上指定的规则集。

所以现在我需要在发布模式下运行代码分析(定义了 CODE_ANALYSIS 常量):

然而,这意味着我们在我们的开发机器上获得了一个发布版本。这对我们的设置有一些副作用。

问题:如何从命令行指定规则集。我希望是这样的:

0 投票
1 回答
852 浏览

ruby-on-rails - Rails 应用静态代码分析插件

我想在我的 Rails 应用程序上运行静态代码分析。是否有可用的工具可以帮助我做到这一点?

谢谢,西瓦库玛。

0 投票
0 回答
333 浏览

visual-studio-2010 - Visual Studio 2010 静态代码分析迁移

我正在将我的项目从 Visual Studio 2008 更新到 Visual Studio 2010,但我仍在使用 TFS 2008。

我在我的 TFS 中有一个静态代码分析,当我使用 Visual Studio 2008 时,我将来自服务器的规则放在我的源代码项目中(右键单击解决方案-> 解决方案的代码分析-> 替换\合并与签入政策)

当我升级到 VS 2010 时,会生成新的规则集文件,其规则与我在 VS2008 中的规则不同。另外,我找不到“用签入策略替换\合并”选项。

如何在 VS 2010 和 TFS 2010 中应用静态代码分析?

0 投票
1 回答
1109 浏览

.net - 项目引用混淆程序集的代码分析失败

由于我们已将第 3 方程序集合并到我们的项目中,因此 Visual Studio 2010 代码分析无法运行。

项目:错误:CA0055:无法加载 C:\Programming\MyAssembly.dll。

项目:错误:CA0052:未选择目标。

项目:错误:CA0058:找不到引用的程序集“TheirAssembly,Version=1.0.0.0,Culture=neutral,PublicKeyToken=...”。此程序集是分析所必需的,并由:C:\Programming\MyAssembly.dll 引用。

打开第 3 方组件 Reflector 时出现错误:

NT 标头中的数据目录数无效。

我在网上做了一些搜索,看来程序集被混淆了。

有没有办法解决这个问题?我们可以从代码分析中排除这个程序集吗?

0 投票
5 回答
286 浏览

c++ - 扩展作业测试平台以包括代码分析 (C/C++)

我正在维护/开发一个家庭作业测试平台。它主要是自动的。我现在需要添加的是代码分析。我需要检查特定构造的代码。

例如:

该文件是否main.cpp包含一个以userconst 方法 命名的类get_name()

是否有一些工具可以让我做这样的事情(理想的是可以编写脚本的东西)。仅限 Linux。

0 投票
4 回答
192 浏览

static-analysis - 是否有通用皮棉(-toolkit)?

我想对用一种不太常见的编程语言(类似 C 的语法)编写的一堆脚本进行静态代码分析。常见的问题是:

  • 使用未定义/声明的符号
  • 调用函数时参数的数量或类型错误

语言解释器/编译器本身并不为这些问题提供帮助。

是否有任何类似 lint 的工具足够灵活,可以轻松地适应新的编程语言?或者有人知道另一个好的起点吗?(莱克斯/雅克???)

提前致谢

0 投票
2 回答
176 浏览

php - 如何快速定位到 PHP 的 C 源码中某个特定 PHP 函数的实现?

PHP 的 C 源代码可以在http://svn.php.net/viewvc/php/php-src/trunk/找到。如果我想查找特定 PHP 函数的实现,如何在该 SVN 源中快速找到它?

0 投票
1 回答
2115 浏览

c - C语言数据结构可视化

是否有任何 C 语言静态分析器可以在 C 代码主体中创建数据结构的图形图?

我正在考虑 DDD(数据显示调试器)中显示的数据行,但这是通过源代码的静态分析来工作的。

欢迎使用任何图表符号(UML 等),它可以在任何平台上运行。

谢谢。

0 投票
13 回答
1164 浏览

c++ - 我应该将这些方法声明为 const 吗?

我正在处理一些 C++ 代码,其中我有几个具有私有方法的管理器对象,例如

它调用OnFooUpdated()此对象的侦听器上的方法。

请注意,它们不会修改此对象的状态,因此从技术上讲,它们可以成为const方法,即使它们通常会修改整个系统的状态。特别是,侦听器对象可能会回调该对象并对其进行修改。

就我个人而言,我想让它们保持原样而不是声明它们const

但是,我们的静态代码检查器 QAC 将此标记为偏差,因此我必须声明它们const,或者我必须争论为什么它们应该保持非常量并获得偏差许可。

不声明这些方法的论据是什么const
还是我应该遵循 QAC 并声明它们const
我应该采用仅限于此对象的严格局部观点,还是将系统视为一个整体?

0 投票
4 回答
8218 浏览

c# - 如何解析 C# 程序集并提取每个方法

对于我的应用程序,我想解析一个程序集并提取每个方法并将方法的名称和源代码存储在我的一个对象中(我在我的代码中定义)。

我应该从哪里开始实施呢?

编辑:从答案和评论中我看到从程序集中获取源代码并不容易。那么如果我想从当前解决方案(Visual Studio)中没有的源代码文件中获取源代码,我应该从哪里开始呢?