19 lines
353 B
C++
19 lines
353 B
C++
|
// RUN: rm -rf %t
|
||
|
// RUN: %clang_cc1 -fmodules -fmodules-cache-path=%t -fimplicit-module-maps \
|
||
|
// RUN: -I%S/Inputs/thread-safety -std=c++11 -Wthread-safety \
|
||
|
// RUN: -verify %s
|
||
|
//
|
||
|
// expected-no-diagnostics
|
||
|
|
||
|
#include "b.h"
|
||
|
#include "c.h"
|
||
|
|
||
|
bool g();
|
||
|
void X::f() {
|
||
|
m.lock();
|
||
|
if (g())
|
||
|
m.unlock();
|
||
|
else
|
||
|
unlock(*this);
|
||
|
}
|