Sparse aus Wikipedia.
Zum Beitrag
Sparse - Wikipedia, the free encyclopedia
a.new,#quickbar a.new{color:#ba0000}
/* cache key: enwiki:resourceloader:filter:minify-css:5:f2a9127573a22335c2a9102b208c73e7 */
Sparse
From Wikipedia, the free encyclopedia
Jump to: ,
This article is about a software static analysis tool. For other uses, see
Sparse (disambiguation).
Sparse
Original author(s)
Linus Torvalds
Developer(s)
Josh Triplett, Christopher Li
Initial release
2003
Stable release
0.4.3 / November 3, 2010; 6 months ago (2010-11-03)
Operating system
Linux
Type
Static code analysis
License
Open Software License
Website
http://sparse.wiki.kernel.org
In This
static analysis tool differed from
other such tools in that it was initially designed to flag constructs that were only likely to be of interest to
kernel developers (e.g. mixing pointers to user
address space and pointers to kernel address space).
Sparse contains built-in checks for known problematic and a set of annotations designed to convey
semantic information about
types, such as what address space pointers point to, or what locks a function acquires or releases.
Li is the current maintainer. Sparse is released under the
Open Software License, version 1.1.
Contents
Annotations
Some of the checks performed by Sparse require annotating the source code using the __attribute__ Sparse defines the following list of attributes:
address_space(num)
bitwise
force
context(expression,in_context,out_context)
When an API is defined with a macro, the specifier __attribute__((context(...))) can be replaced by __context__(...).
Linux kernel definitions
The Linux kernel defines the following short forms as pre-processor macros in files
mehrSparse aus Wikipedia.
Zum Beitrag