Add --no-data option and warning.
[smatch.git] / smatch_extra.h
blobf915259b8ecc2d5e7ce35dbcf67eacd91d69f1ac
1 /*
2 * sparse/smatch_extra.h
4 * Copyright (C) 2009 Dan Carpenter.
6 * Licensed under the Open Software License version 1.1
8 */
10 enum data_type {
11 DATA_NUM,
14 DECLARE_PTR_LIST(num_list, long long);
16 struct data_info {
17 enum data_type type;
18 int merged;
19 struct num_list *values;
21 DECLARE_ALLOCATOR(data_info);
23 /* these are implimented in smatch_extra_helper.c */
24 struct data_info *alloc_data_info(long long num);
25 void add_num(struct num_list **list, long long num);
26 struct num_list *num_list_union(struct num_list *one, struct num_list *two);
27 int num_matches(struct data_info *dinfo, long long num);
28 long long get_single_value(struct data_info *dinfo);
29 int possibly_true(int comparison, struct data_info *dinfo, int num, int left);
30 int possibly_false(int comparison, struct data_info *dinfo, int num, int left);
32 /* used in smatch_slist. implemented in smatch_extra.c */
33 struct sm_state *__extra_merge(struct sm_state *one, struct state_list *slist1,
34 struct sm_state *two, struct state_list *slist2);
35 struct sm_state *__extra_and_merge(struct sm_state *sm,
36 struct state_list_stack *stack);