Make switch statements work again.
commit922ce28a3728493b28a75678b86d7cca1082633f
authorDan Carpenter <error27@gmail.com>
Wed, 27 May 2009 09:39:34 +0000 (27 12:39 +0300)
committerDan Carpenter <error27@gmail.com>
Wed, 27 May 2009 09:39:34 +0000 (27 12:39 +0300)
tree67a1652de5aaa6171c1286b10995623e0a91780c
parent92fcecc5be5cf6d96628a898d1b1d795b5cbc37f
Make switch statements work again.

Switch statements had a problem where if you took the sm_state tree formed
by a switch statement and tried to figure out the implications in a second
switch some implications were lost.

The problem was caused because instead of just saving the remaining
possible case statements, we tried to save the remaining possible states.
The new way is obviously to just save the remaining possible case values.

I had to modify all the implied stuff to use range lists instead of single
values, and create range_list_stacks and some other infrastructure changes.

Signed-off-by: Dan Carpenter <error27@gmail.com>
Makefile
smatch.h
smatch_extra.c
smatch_extra.h
smatch_flow.c
smatch_implied.c
smatch_ranges.c
smatch_states.c