1struct ture {
2	int a;
3};
4
5struct ture *a;
6struct ture *b;
7
8void func (void)
9{
10	if (!a && !(a = returns_nonnull()))
11		return;
12	a->a = 1;
13
14	if (b || (b = returns_nonnull())) {
15		b->a  = 1;
16		return;
17	}
18	b->a = 1;
19}
20/*
21 * check-name: Compound Conditions
22 * check-command: smatch sm_compound_condition.c
23 *
24 * check-output-start
25sm_compound_condition.c:18 func() error: we previously assumed 'b' could be null (see line 14)
26 * check-output-end
27 */
28