blob: c7fb7ade7610c90ade0447018221cb84ecba64fd [file] [log] [blame]
// RUN: %clang_analyze_cc1 -analyzer-checker=alpha.fuchsia.Lock -verify %s
// expected-no-diagnostics
typedef int spin_lock_t;
void spin_lock(spin_lock_t *lock);
int getCond(void);
int spin_trylock(spin_lock_t *lock) {
if (getCond())
return 0;
return -1;
}
void spin_unlock(spin_lock_t *lock);
spin_lock_t mtx;
void no_crash(void) {
if (spin_trylock(&mtx) == 0)
spin_unlock(&mtx);
}