assumed_nonnull crap... temp fix.
[smatch.git] / smatch_extra.h
blob874c3b22d7817e99dc57e306fc267ef8802a94af
1 enum data_type {
2 DATA_NUM,
3 // DATA_RETURN,
4 // DATA_POINTER,
5 // DATA_BITFIELD,
6 };
8 struct num_range {
9 long long min;
10 long long max;
13 DECLARE_PTR_LIST(range_list, struct int_range);
15 struct data_info {
16 data_type type;
17 bool initialized;
18 union {
19 // DATA_NUM
20 struct {
21 struct range_list *ranges;
22 struct range_list *filters;
28 /* these are implimented in smatch_extra_helper.c */
29 void remove_num(struct range_list **range, const int num);
30 void remove_range(struct range_list **range, const range_list *cutter);
32 void add_to_range(struct range_list **range, const int num);
33 void combine_range(struct range_list **range, const range_list *new);
35 void in_range(struct range_list *list, long long num);
36 int ranges_overlap(struct range_list *a, struct range_list *b);