// 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();
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() {
  if (spin_trylock(&mtx) == 0)
    spin_unlock(&mtx);
}
