A semantic parser of source files
Sparse is a semantic parser of source files: it's neither a compiler
(although it could be used as a front-end for one) nor is it a
preprocessor (although it contains as a part of it a preprocessing
phase).
It is meant to be a small - and simple - library. Scanty and meager,
and partly because of that easy to use. It has one mission in life:
create a semantic parse tree for some arbitrary user for further
analysis. It's not a tokenizer, nor is it some generic context-free
parser. In fact, context (semantics) is what it's all about - figuring
out not just what the grouping of tokens are, but what the _types_ are
that the grouping implies.
Sparse is primarily used in the development and debugging of the Linux
kernel.
- Developed at devel:tools:statica
- Sources inherited from project openSUSE:Factory
-
3
derived packages
- Download package
-
Checkout Package
osc -A https://api.opensuse.org checkout devel:ARM:Factory:Contrib:ILP32/sparse && cd $_
- Create Badge
Source Files
Filename | Size | Changed |
---|---|---|
_service | 0000000640 640 Bytes | |
_servicedata | 0000000250 250 Bytes | |
sparse-0.6.1+20200606.tar.xz | 0000305244 298 KB | |
sparse.changes | 0000017357 17 KB | |
sparse.spec | 0000003071 3 KB |
Revision 41 (latest revision is 48)
- Update to version 0.6.1+20200606: * pre-process: fix a compiler array subscript type warning * univ-init: set default to -Wno-universal-initializer * univ-init: scalar initializer needs some additional checks * evaluate: mark evaluate_generic_selection() as static * add support for _Generic * testsuite: add testcase for duplicated local definitions * add an option to suppress warning 'no newline at EOF' * univ-init: conditionally accept { 0 } without warnings * bad-label: respect attribute((unused)) * bad-label: mark labels as used when needed * bad-label: check for unused labels * bad-goto: check declaration of label expressions * bad-goto: extract check_label_declaration() * bad-goto: label expression inside a statement expression is UB * bad-goto: jumping inside a statement expression is an error * scope: give a scope for labels & gotos * build: fix LLVM version detection * and much more - Use latest llvm again as the detection is fixed
Comments 0