static-analysis相关内容

是否有像Lint或Perl :: Critic这样的静态分析工具可用于shell脚本?

是否有任何外壳程序(特别是bash或ksh)检查程序测试外壳程序脚本的样式,最佳实践,命名约定等? (类似于Lint for C或Perl :: Critic for Perl。) 我知道使用ksh可以通过运行 ksh来进行语法检查- n script.ksh ,但我希望不仅限于语法检查-还可以解析/分析实际代码? 解决方案 Debian和Ubuntu项目使用脚本 checkbash ..
发布时间:2020-10-01 05:36:03 其他开发

C和链接中的暂定定义

考虑由两个文件组成的C程序, f1.c: int x; f2.c: int x = 2; 我对 C99标准在于该程序应被拒绝。在我对6.9.2的解释中,变量 x 是在 f1.c 中临时定义的,但是这个临时定义变成了因此,翻译单元末尾的实际定义(并且,我认为)应该像 f1.c 包含定义 int x = 0; 。 使用所有编译器( ..
发布时间:2020-09-28 04:07:04 其他开发

在不执行程序的情况下在C ++ 11中检索auto的类型

我有一些使用 auto 推断类型的C ++ 11代码,我必须将其转换为C ++ 98。我将如何转换代码,以实际类型替换所有 auto 实例? 解决方案方案 它将是一个PITA,但是您可以声明一个不完整的结构模板,该结构模板接受单个类型参数。 给出变量 x 的类型,可以将结构体与 decltype(x),这将导致编译器错误,向您显示推断的类型。 例如: template ..
发布时间:2020-09-27 21:37:27 C/C++开发

在代码合同中使用Contract.ForAll

好的,我还有另一个代码合同问题。我在接口方法上有一个合同,看起来像这样(为清晰起见,省略了其他方法): [ContractClassFor(typeof(IUnboundTagGroup ))] 公共抽象类ContractForIUnboundTagGroup:IUnboundTagGroup { public IUnboundTagGroup [] GetAllGroups() ..
发布时间:2020-09-26 00:32:04 C#/.NET

使用静态字节码分析来确定通过给定方法的所有可能路径是否是尝试解决停止问题的一种方法?

是否可以通过读取给定方法的字节码来确定所有可能的执行路径,或者这等同于尝试解决暂停问题?如果不能将其简化为停工问题,那么我可以走静态分析多远而又不试图解决停工问题? 相关问题:“ ;在给定的二进制文件中查找所有代码等同于停止问题。真的吗? 解决方案 是的,这很容易解决停止问题。考虑以下if语句: 如果(TuringMachine(x))then goto fred; OK ..
发布时间:2020-09-25 07:17:05 其他开发

OCLint不在系统路径中

我有一个Xcode项目.我尝试将OcLint集成到其中.但是它说没有OCLint.如何下载OCLint并将其添加到系统路径中,以便可以将OCLint集成到我的xcode项目中. 编辑: 当我有一部分OCLint脚本作为 hash oclint &> /dev/null if [ $? -eq 1 ]; then echo >&2 "oclint not found, analyz ..
发布时间:2020-09-19 02:07:36 移动开发

是否有工具可以在本地验证Azure DevOps管道?

在更改YAML定义的Azure DevOps管道时,将更改推送到分支只是为了查看构建失败并出现解析错误(有效的YAML,但管道定义无效),然后尝试尝试-和错误解决了这个问题. 最好通过在本地分析和验证管道定义来缩短反馈回路;从根本上讲,这是一个关于Azure管线中可以定义的各种资源等知识的短毛绒玩具.但是,我找不到能做到这一点的任何工具. 在某处有这样的工具吗? 解决方案 您可 ..
发布时间:2020-09-17 01:18:42 其他开发

在声明案例类时是否应该使用final修饰符?

根据 scala-wartremover 静态分析工具,我必须在我创建的每个案例类的前面加上"final":error消息显示“案例类必须是最终的". 根据 scapegoat (Scala的另一种静态分析工具),我不应该(错误消息:“冗余的最终修饰符位于案例类") 谁是正确的,为什么? 解决方案 就使用它确实可以改变事物的意义而言,这不是多余的.正如人们所期望的,您不能扩展最 ..
发布时间:2020-08-06 01:37:40 其他开发

如何从c ++核心准则检查器中排除文件夹检查路径?

我的问题是,Nuget软件包(在solutions/packages文件夹内)引起了很多警告,并且对其进行分析已经花费了很多时间. 我尝试从静态分析中排除文件夹,但没有成功.我的理解是,这将使用CAExcludePath环境变量来实现.但是我应该在哪里设置CAExcludePath环境变量?我已经尝试通过project-> debugger-> environment字段进行设置. 解 ..
发布时间:2020-07-27 08:15:53 C/C++开发

静态代码分析器:非托管C ++ Visual Studio 2008

我在Visual Studio 2008上开发了非托管的商业C ++应用程序,我想添加一个静态代码分析工具. 有什么建议吗? 我认为,如果该工具可以集成到MSVC中,那就太好了. 我正在考虑 PC-Lint + 但是,我一直在认真研究 Coverity ,价格并不是真正的问题.我希望得到在MSVC上实际使用该工具用于不受管理的C ++ 的人的意见,他们绝对喜欢它. 最后,V ..
发布时间:2020-07-27 04:50:47 C/C++开发

如何从Eclipse索引中排除文件(静态代码分析)?

我有一个makefile项目,其中包含许多源文件,标头文件和其他文件,我正尝试将它们转换为Eclipse“本机"项目.索引器报告目录中存在但被构建排除的文件上的错误和警告的问题.因此,目录树的大部分都用红色的x符号标记. 如何使索引器忽略特定的文件和/或目录? 注意:当将目录定义为“派生"时,进一步搜索将排除该目录,但不幸的是,这不在代码分析中.使用项目资源过滤器也不能解决问题. ..
发布时间:2020-07-07 22:20:50 Java开发

.NET 3.5处置注册表项

我有以下代码: RegistryKey installKey = Registry.LocalMachine.OpenSubKey(installKey); 我正在我的代码上运行静态分析工具,这给我一个缺陷,说我是从方法中返回的,而没有使用 installKey .我知道您可以在.NET 4.0或更高版本中的RegistryKey上调用Dispose(),但是我的代码在.NET 3.5上 ..
发布时间:2020-07-05 21:00:56 C#/.NET

根据PEP257自动检查文档字符串样式的工具

诸如 pep8 之类的工具可以检查源代码样式,但不会根据 pep257 , 更新 我决定自行实现这种静态分析工具,请参阅: https://github.com/GreenSteam/pep257 现在, pep257 的大部分内容都已涵盖. 设计受到所提及的 pep8 工具的严重影响. 解决方案 我不知道用于python doc字符串的任何静态分析工具.在开始使用PyL ..
发布时间:2020-07-02 20:34:28 Python

从APK中提取API调用

如何从APK中提取API调用/系统调用序列?我现在已经从APK中反编译了源代码,我想知道是否有一个工具可以从源代码中提取该应用程序进行的所有系统调用. 解决方案 您应该使用CuckooDroid分析APK文件.我安装了它并使用.这样我就可以获得所有服务,活动等.您可以在此处查看在此处输入链接描述 或在此处输入链接描述 它们提供了有关APK的所有功能. ..
发布时间:2020-06-30 18:32:06 移动开发

Java 9的JSR-305注释替换

到目前为止,我们一直在使用Findbugs JSR-305批注(com.google.code.findbugs:jsr305),包括工具支持在内的所有组件(Sonar,Eclipse,Findbugs等)都可以正常工作. 但是,据我们了解,Java 9中的Jigsaw将破坏JSR-305注释(不允许在两个模块中使用一个软件包).这在JavaOne 2015上得到了证实.Oracle的推理是 ..
发布时间:2020-06-27 18:52:33 其他开发

如何立即查看AppCode中的Swift错误?

有没有一种方法可以立即查看AppCode中的Swift错误?在他们的网站上,他们谈论静态代码分析,但是我找不到在哪里声称这种情况会立即发生.当您在Xcode中键入一些Swift代码时,通常会立即看到警告,错误等.在AppCode中,我首先必须进行构建(⌘F9),然后在 Messages Build 视图中浏览列表(在AppCode 2016.01 RC2中变得更好): 我觉得这很乏味,尤其是 ..