type_val: improve the type/value information in the database
Smatch tries to record the possible values of "(struct whatever)->foo" in
the database. The problem is that sometimes we store
"(struct whatever)->foo" into some other "void *bar". This makes a link
between ->foo and bar so that if we get a ->foo out of bar, then we're
going to assume it's the same thing that we put there.
This works ok in testing.
Also I'm putting "ignored" in the function_type_value table just so I can
see which things are affected and to help debug any problems.
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>