diff options
Diffstat (limited to 'tests')
-rw-r--r-- | tests/splint/SConscript | 13 | ||||
-rw-r--r-- | tests/splint/splint.rc | 36 |
2 files changed, 49 insertions, 0 deletions
diff --git a/tests/splint/SConscript b/tests/splint/SConscript new file mode 100644 index 00000000..c1432dde --- /dev/null +++ b/tests/splint/SConscript @@ -0,0 +1,13 @@ +# Check the nanopb core using splint + +Import('env') + +p = env.WhereIs('splint') + +if p: + env.Command('pb_decode.splint', '$NANOPB/pb_decode.c', + 'splint -f splint/splint.rc $SOURCE 2> $TARGET') + + env.Command('pb_encode.splint', '$NANOPB/pb_encode.c', + 'splint -f splint/splint.rc $SOURCE 2> $TARGET') + diff --git a/tests/splint/splint.rc b/tests/splint/splint.rc new file mode 100644 index 00000000..c77e210f --- /dev/null +++ b/tests/splint/splint.rc @@ -0,0 +1,36 @@ ++checks ++partial ++matchanyintegral ++strictlib +-isoreserved # to be fixed in 0.3 +-nullassign +-predboolint +-predboolptr ++ptrnegate +-switchloopbreak ++ignoresigns +-infloopsuncon +-type + +# splint's memory checks don't quite work without annotations +-mustfreeonly +-compmempass +-nullret +-observertrans +-statictrans +-compdestroy +-nullpass +-nullstate +-compdef +-usereleased +-temptrans +-dependenttrans +-kepttrans +-branchstate + +# These tests give false positives, compiler typically has +# better warnings for these. +-noret +-noeffect +-usedef + |