- 博客(4)
- 收藏
- 关注
原创 如何用clang analyzer定制静态分析规则(2)创建定制规则库篇
如何用clang analyzer定制静态分析规则(2)创建定制规则库篇在上一篇《工程配置篇》里,我们已经了解了如何下载llvm和clang的源码,如何生成Xcode工程并完成编译,现在就开始定制自己的静态分析规则。 首先要明确的两点,一是clang自己的build target基本是静态链接的,但我们要做的是独立发布、独立加载的规则库,必须做成动态链接。二是开发静态分析规则,完全依赖clang提
2017-04-21 17:27:06 1347
原创 如何用clang analyzer定制静态分析规则(1)工程配置篇
OS X、iOS开发都很熟悉clang,这个编译器前端支持C、C++、Objective-C、Objective-C++,是Mac世界里最主要的编译工具。 clang static analyzer(以下简称clang analyzer)是基于clang开发的官方静态代码分析工具,用于在编译阶段提前发现代码问题,具体信息请见官方网站:https://clang-analyzer.llvm.org/
2017-04-18 08:14:02 4044
原创 从lombok到UAST – 浅谈Android Lint的AST Parser(2)
《从lombok到UAST – 浅谈Android Lint的AST Parser(1)》1.3、内存占用过大lombok-ast的第三个大问题是内存占用。由于现在的Lint只能从gradle里运行,当运行gradle lint时,如果Android项目较大,时常会在扫描中出现OOM。而且项目规模越大,出现OOM的可能性越高。不少人基于自己过往的经验,认为是gradle造成的,毕竟gradle也是个
2017-04-01 15:13:38 1323
原创 从lombok到UAST – 浅谈Android Lint的AST Parser(1)
从lombok到UAST – 浅谈Android Lint的AST解析引擎(1)自从ADT 16第一次引入Android Lint(以下简称:Lint)以来,Lint便成为Android平台上最重要的静态代码扫描工具。与早期基于XPath的静态扫描工具不同,Lint基于AST(Abstract Syntax Tree)进行分析,可以用来定制很复杂的扫描规则。关于Lint的介绍,网上已有很多文章可参考
2017-03-31 21:30:33 3134
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人