标签: static-code-analysis

用于静态代码分析的 B::Lint 和 Perl::Critic

我需要为 Perl 中的静态代码分析实现 lint 和 Perl::Critic。我在 Perl 中找到了用于 lint 的 B::Lint 模块。

  1. 是否真的需要同时使用这两个模块进行静态代码分析?
  2. 如果是,那么这两个模块如何协同工作?

perl lint perl-critic static-code-analysis

3
推荐指数
1
解决办法
1344
查看次数

Java/Eclipse如何在项目中获取类型方法的用法?

在Eclipse中,我可以按Ctrl + Shift + G(或r-click - > References-> Workspace)来获取工作空间中类型(或字段等)的所有引用.

我需要的是一种获取工作区中使用给定类型的任何方法的所有位置的列表的方法.也就是说,我想得到所有类型方法的调用java.math.BigDecimal.

Eclipse是否支持这种情况?

FWIW:我可以使用VS + Resharper为C#代码做类似的事情:
r-单击类型 - > Find Usages Advanced -> Usages of members.

更新

让我重新解释这个问题,似乎不是很清楚.

我想找到我的所有代码调用任何的BigDecimal的方法.
(根据这些信息,我将手动(?)派生出我的代码实际使用的BigDecimal公共接口的子集.

java eclipse static-code-analysis

3
推荐指数
1
解决办法
6417
查看次数

cppcheck-terminateStrncpy

cppcheck 新手。无法弄清楚如何解决此问题(cppcheck 警告)。任何帮助,将不胜感激。

 if (!call_initialized)
 { char id1[16];
   char id1[16];
   char* dummy_char_ptr = inet_ntoa(*((in_addr*)&source_ip));
   std::strncpy(id1, dummy_char_ptr, 16);
   dummy_char_ptr=inet_ntoa(*((in_addr*)&destination_ip));
   std::strncpy(id2, dummy_char_ptr, 16);
   dummy_char_ptr=NULL;
   std::cerr << id1 << " -----> " << id2 << std::endl;
   return 0;
   }
Run Code Online (Sandbox Code Playgroud)

错误(警告) - 调用 strncpy() 后,缓冲区“id2”可能不会以零结尾。

c++ strncpy static-code-analysis cppcheck

3
推荐指数
1
解决办法
314
查看次数

ESLint“代码”与“空白”值可修复

规则定义为 fixable 时fixable应指定可以具有codewhitespace值的键:

fixable(string) 如果--fix命令行上的选项自动修复规则报告的问题,则为“代码”或“空格”

这些值之间有什么区别whitespace,具体是什么?

javascript testing abstract-syntax-tree static-code-analysis eslint

3
推荐指数
1
解决办法
276
查看次数

使用 ShellCheck 对 shell 脚本进行静态代码分析 - 预定义规则

我正在尝试使用 Shellcheck 对 shell 脚本进行静态代码分析。我想知道用于执行分析的规则。我在哪里可以得到它们?

以下是我从简单的 helloworld 程序获得的示例输出:

In C:\Users\~\Desktop\hello.sh line 1:
#!/bin/sh
         ^-- SC1017: Literal carriage return. Run script through tr -d '\r' .


In C:\Users\~\Desktop\hello.sh line 2:
# This is a comment!
                    ^-- SC1017: Literal carriage return. Run script through tr -d '\r' .
Run Code Online (Sandbox Code Playgroud)

shell static-code-analysis shellcheck

3
推荐指数
1
解决办法
905
查看次数

如何处理"空指针不应该被解除引用(鱿鱼:S2259)"规则问题?

所以我对SonarLint有一个问题,我不知道如何处理.

假设我有一个方法课

public class Class(RemoteContext context)
    RemoteContext context = context;

    public void String method(String data) {
        if(data == null)
            context.raiseException("data can't be null");

        //do stuff with data like data.get();
    }
Run Code Online (Sandbox Code Playgroud)

当我用sonarLint(3.2.)分析这个类时,我得到一个Null指针不应该被解引用问题.

所以我的问题是.如何解决这个问题? context.RaiseException将停止方法执行,所以我认为这是一个误报.

该应用程序有很多案例(类/方法)有这个问题.所以我认为注释是一种矫枉过正(丑陋的代码)我也可以在每次raiseException()调用后键入return ,但我的印象不是"程序员方式".

我猜写自己的规则是最好的.

我正在查看这些主题并让我谷歌搜索,但没有找到任何有用的这种情况,当我有点必须做声纳实际做的"相反".不是提出问题,而是对方法"开绿灯"?

希望我对这个问题很清楚.

java static-code-analysis sonarqube sonarlint

3
推荐指数
1
解决办法
3158
查看次数

在TFS2010上设置代码分析时,编译错误不可见

我正在开始使用TFS 2010,我开始尝试设置持续集成.为此,我使用DefaultTemplate.xml配置为Code Analysisset 的默认构建模板()Always.

一切都很好......除非它没有.当构建中出现错误(或测试失败)时,TFS报告中唯一可用的错误如下

无法读取代码分析输出报告.确保目录是可写的(默认是项目输出目录).

仅在没有代码分析时报告原始错误.如果没有错误,则会正确输出代码分析报告.

有任何想法吗?

continuous-integration compilation tfs2010 static-code-analysis

2
推荐指数
1
解决办法
2945
查看次数

在VS2013中查找C#代码中的异常隐藏/吞咽

是否有一些内置在函数/扩展/工具中的方法来查找VS2013中C#解决方案(ASP.NET WebForms)n中的所有异常隐藏/异常吞咽.

谢谢

编辑:

我有一个解决方案,其中一些程序员使用hide/swallow异常(空catch,只捕获一些无用的代码).我正在寻找一些方法来在代码中找到所有这些地方,分析它们,然后修复它们.

c# code-analysis exception visual-studio static-code-analysis

2
推荐指数
1
解决办法
662
查看次数

为什么CPP Check不显示任何错误?

这个

cppcheck --enable=style --inconclusive --check-config --xml --xml-version=2 -v -I.. -I../mocks -I../gmock -I../gtest -DUNIT_TEST ../src
Run Code Online (Sandbox Code Playgroud)

结果

<?xml version="1.0" encoding="UTF-8"?>
<results version="2">
  <cppcheck version="1.52"/>
  <errors>
Checking ../src/AppMain.cpp...
  </errors>
</results>
Run Code Online (Sandbox Code Playgroud)

显然,我做错了-但是呢?

顺便说一句,我确定代码有问题,但是可以肯定的是,我将这两行粘贴到了其中

 char a[10];
 a[10] = 0;
Run Code Online (Sandbox Code Playgroud)

而且没有报告超出范围引用

c++ xml static-code-analysis cppcheck

2
推荐指数
1
解决办法
3349
查看次数

Kotlin编程语言的静态分析工具?

PMD,FindBugs,CheckStyle等是最常用的静态代码分析工具java.

我认为Android-Lint是唯一存在的可信静态分析工具,只能用于分析android项目.

Sonarqube还没有Kotlin插件.我认为他们计划在今年晚些时候提供这个.(我在下面的链接中找到了这些信息).

https://discuss.kotlinlang.org/t/sonarqube-support/3657

如果我错了,请纠正我?

android static-code-analysis kotlin

2
推荐指数
1
解决办法
1514
查看次数