Thanks to Paul Cochrane, I am now able to run splint on the parrot sources. I'm using git-svn to sync his "splint" branch up with the latest changes from trunk, so this is current as of svn r19710.
Summary: Error Type Reported Suppressed =================== ======== ========= nullderef 0 536 nullpass 0 1072 nullret 0 409 nullstate 0 696 nullassign 0 153 usedef 0 223 compdef 0 4084 initallelements 17 0 incondefs 1 762 matchfields 0 933 realcompare 0 245 unsignedcompare 0 2 nullptrarith 0 7 bitwisesigned 0 6272 shiftnegative 0 114 shiftimplementation 0 6705 sizeoftype 0 3942 fixedformalarray 8 374 formalarray 0 1389 boolops 0 1303 predboolint 0 14 predboolptr 0 1140 predboolothers 841 39 abstract 0 9 mutrep 0 188 mustfreefresh 0 4082 mustfreeonly 0 4731 usereleased 0 335 compdestroy 0 23418 branchstate 0 1417 compmempass 0 1801 stackref 5 3 dependenttrans 0 23 onlytrans 0 815 onlyunqglobaltrans 0 4 temptrans 0 3900 kepttrans 0 277 immediatetrans 0 50 statictrans 0 50 unqualifiedtrans 0 701 staticinittrans 0 8 readonlytrans 0 1321 aliasunique 1 0 mayaliasunique 0 9 observertrans 0 57 modobserver 2 0 globs 0 268 evalorder 5 0 evalorderuncon 0 136 casebreak 648 618 looploopbreak 0 42 loopswitchbreak 0 613 switchswitchbreak 0 57 looploopcontinue 0 29 ifempty 3 0 noeffect 126 0 retvalother 0 776 retvalint 0 1104 sefuncon 0 7 namechecks 3 0 isoreserved 0 24311 fcnuse 82 423 paramuse 0 12552 varuse 19 15 declundef 37 0 oldstyle 0 8 exitarg 0 16 shadow 49 98 nestedextern 25 42 redecl 0 3048 redef 1388 1628 exporttype 0 262 includenest 21 288 type 0 10588 enummembers 0 186 formatconst 0 13 voidabstract 0 7 castfcnptr 0 171 charindex 0 10 ignoresigns 2 0 sysunrecog 1 0 unrecog 16 0 bufferoverflowhigh 52 0 warnlintcomments 0 3 ======== ========= Total 3352 130932 Full log: http://squawk.glines.org/splint2-try3.log Mark