1 struct ture { 2 int a; 3 }; 4 5 struct ture *a; 6 struct ture *b; 7 func(void)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 25 sm_compound_condition.c:18 func() error: we previously assumed 'b' could be null (see line 14) 26 * check-output-end 27 */ 28