I have been lurking here since here since CodeCon. Funny how a person can lose track of time...
Smatch development is progressing slowly but surely. I have been playing with Apache source as part of a larger project. Here is a break down of some of the pointer uses in Apache.
There are 43108 pointer dereferences in the Apache source code. That is counting dereferences in macros once for each time the macro is used. It only counts code used in my compile, not all Apache source.
Count Type of pointer Explanation 15225 parm_decl *parameter (arrays are passed as pointers) 12020 var_decl *foo 10466 plus_expr *foo = bar; foo; 1923 postincrement_expr *foo++ 1604 component_ref *foo.bar 692 call_expr get_foo()->bar 461 addr_expr pointers to a string constant mostly. 398 indirect_ref **foo 120 cond_expr *(foo?foo:bar) 80 minus_expr foo[a - b - c] 71 preincrement_expr *++foo 25 predecrement_expr *--foo 9 array_ref *foo[a] 6 postdecrement_expr *foo-- 4 va_arg_expr *(va_arg(foo, int *)) 4 modify_expr *(foo = get_bar())