// RUN: %clang_analyze_cc1 -w -analyzer-checker=core -verify %s // expected-no-diagnostics struct toggle { bool value; }; toggle global_toggle; toggle get_global_toggle() { return global_toggle; } int oob_access(); bool compare(toggle one, bool other) { if (one.value != other) return true; if (one.value) oob_access(); return true; } bool coin(); void bar() { bool left = coin(); bool right = coin(); for (;;) compare(get_global_toggle(), left) && compare(get_global_toggle(), right); }