static-analysis相关内容
我正在尝试使用 go / parse , go / token 对Go项目中的函数调用进行一些静态分析c $ c>和 go / ast 模块,但我无法弄清楚如何确定给定的 ast.Ident object。 例如,如果解析这样的内容: textToContain:= bytes.NewBuffer([] byte {}) //很多其他代码 text:= textToContain
..
相信与否,我想在一个扩展到指定初始值的宏中使用 static_assert : [(N) #define INIT(N)\ / * static_assert )] =(N) int数组[99] = {INIT(1),INIT(2),INIT(42)}; 我想从 INIT(42),但取消注释 static_assert 是语法错误。 AFAIK static_assert 在语
..
我编译这个简单的程式: #include #include 使用namespace std; struct Foo { int a; int b; }; struct Bar { // Bar()= default; int d; }; int main() { Foo foo; 酒吧; print
..
我想看看我的代码中的所有地方(C ++),它忽略了函数的返回值。如何使用gcc或静态代码分析工具? 不良代码示例: int f(int z){ return z +(z * 2)+ z / 3 + z * z + 23; } int main() { int i = 7; f(i); /////
..
是否有任何工具可用于执行Scala代码的静态分析,类似于FindBugs和PMD for Java或Splint for C / C ++?我知道FindBugs适用于编译Java产生的字节码,所以我很好奇它如何在Scala上工作。 谷歌搜索(截至2009年10月27日)显示非常少。 谷歌搜索(截至2010年2月1日)揭示了这个问题。 方案 FindBugs分析JVM字节代码,无论生
..
我试图让PHP正则表达式从php源代码中提取函数。直到现在,我使用递归正则表达式来提取{}之间的所有内容,但是它也匹配if语句之类的内容。当我使用类似的东西时: preg_match_all(“/(function。* \(。* \))({( [^ {}] + |(?R))*})/“,$ data,$ matches); 当文件中有超过1个函数时它不工作(可能是因为它使用
..
我想知道是否有一个工具可以使用静态代码分析在C#中找到未捕获的异常。基本上我想选择一个methodA()并且想要一个由methodA()抛出的所有异常以及methodA()所调用的所有方法的列表。我试过 ReSharper + 代理约翰逊和 AtomineerUtils 都不能完成这个简单的任务。 / p> 这是我的示例代码: public class Rectangle {
..
我有一个非常大的EF edmx模型,超过450个类/实体。过去5年来,这种情况有机地增长。使用Visual Studio 2013和CodeLens功能,我注意到有些类列出了0个引用。当我做一些研究,我发现这是真的,我可以从模型中删除该实体。 问题是我必须看看所有450个类在edmx中看看CodeLens是否说有0个引用。有没有报告,出口我可以用CodeLens?是否有任何方法来扩展它以提供
..
我想知道是否可以在Windows中检测到这种缓冲区溢出。缓冲区是全局的(不是堆栈)所以/ Visual Studio 2008中的RTC,VS2012没有检查它。 MinGW gcc也失败了。 #include char buffer [2]; void main() { sprintf(buffer,“12345”); } 我的第一个想
..
当我给Keil编译器“-callgraph”选项 时,它静态地计算出我的确切的“最大堆栈使用率”。 今天它给了我一个“最大堆栈使用率= 284字节+未知(无堆栈大小的功能)”消息,以及“没有堆栈信息的函数”列表。 Nigel Jones表示递归在嵌入式系统中是一个非常糟糕的想法 (”计算你的堆栈大小“ 2009), 所以我一直小心不要在这段代码中做任何相互递归的函数。 另外
..
在多线程嵌入式软件(用C或C ++编写)中,线程必须有足够的堆栈空间,以使其能够完成其操作而不会溢出。在某些实时嵌入式环境中,正确的堆栈大小至关重要,因为(至少在某些我曾经使用过的系统中),操作系统将无法检测到这个。 通常,在创建线程时(即在pthread_create()的参数等)中指定新线程(主线程除外)的堆栈大小。通常,这些堆栈大小被硬编码为在代码原始编写或测试时已知的值。 然而
..
我正在为嵌入式系统编写启动代码 - 在跳转到main()函数之前加载初始堆栈指针的代码 - 我需要告诉我应用程序将使用多少个堆栈字节(或者一些较大的,保守的估计)。 我被告知gcc编译器现在有一个-fstack-usage选项和-fcallgraph-info选项,可以以某种方式被使用以静态计算我的确切的“最大堆叠使用量”。 (“与GCC的编译时栈需求分析”由Botcazou,Comar和
..
在Eclipse中检查@Nonnull和@Nullable注释是早期测试版。最大的问题是它不知道Java API的空行为。 目前还有其他任何插件? 解决方案 它现在已经集成到Eclipse Kepler中。
..
当配置Eclipse 4.2.0执行空分析(配置为使用 @ javax.annotation.Nonnull 等)时,以下代码将生成警告 空类型安全性:int类型的表达式需要取消选中 转换才能符合“@Nonnull Integer” class C { static void foo(int i) { bar(i); //警告 } static void bar(
..
我正在寻找一个大学课程的静态分析仪。为了为工具提供更多的功能,我希望能够查找调用层次结构(如Eclipse中的Ctrl + Alt + H)。这也将是一个快速的操作,所以查找可能需要针对索引而不是字节码扫描。 但是,编写Eclipse插件将是我太期望了。相反,我宁愿解析Eclipse的创建代码索引的部分,并使用库来执行查找。用户的界面将在命令行上,以简化实现。 我看到Eclipse使用
..
是否有任何Java自动代码审查工具?特别是Eclipse的插件?我期望的工具是一个自动化代码审查插件或工具,可以自动检测代码中的问题。 (Microsoft使用 OACR 进行此操作)。像 Jupiter 不会帮助 ,因为它们只是eclipse的同行评审工具。 解决方案 你的意思是不是自动化代码审查,而是静态代码分析。 对于Java工具,请参阅: http:/ /en.wiki
..
我正在寻找一种语言不可知的代码复制工具。很容易找到特定于语言的代码复制工具(对于Java,C,PHP,...),但是我想在自定义语法中的模板上运行一些代码复制分析。 我不在乎语法的高级解析,只是直线上的原始字符串比较是好的。空白不敏感的匹配将是一个加号,但不是必需的。 (这不是很难自己规范化/消除空白。) 有没有人知道可以(误)用于这样的工具? 谢谢。 解决方案 看看 y
..
我看到很多可以解析html的php库。一个很好的例子是 QueryPath ,它模仿了Jquery Api。 但是,我正在寻找分析 phtml 。所以,图书馆不仅要善于分析DOM,还要善于分析 php处理说明。例如 Php Document 对象模型或 PDOM 。 这样的文档:
..
我非常希望将 pylint 整合到 的构建过程中,我的python项目但是我遇到了一个show-stops:我觉得非常有用的 错误类型之一 - : E1101:*%s%r没有%r 成员* - 在使用常用django字段时不断报告错误,例如 : E1101:125:get_user_tags:Class'Tag'没有'对象'成员 代码: def get_us
..
我有一种情况,那里有一小块Java代码,它有大量的jar依赖它。然而,这些罐子之间的依赖非常浅。在大多数情况下,它只取决于单个界面的jar。 我不想将所有的jar分发到应用程序,而是要分发特定的类文件在它实际使用的罐子里面。这样做的原因是为了节省空间(此代码将生活在一个小程序中)。 有人知道自动执行此工具或方法吗?假设所有的依赖项是静态的,这似乎完全是可能的。任何想法? 解决方案
..