clang API Documentation

Classes | Namespaces | Enumerations | Functions
ThreadSafety.h File Reference
#include "clang/Analysis/AnalysisContext.h"
#include "clang/Basic/SourceLocation.h"
#include "llvm/ADT/StringRef.h"
Include dependency graph for ThreadSafety.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  clang::threadSafety::ThreadSafetyHandler
 Handler class for thread safety warnings. More...

Namespaces

namespace  clang
namespace  clang::threadSafety

Enumerations

enum  clang::threadSafety::ProtectedOperationKind {
  clang::threadSafety::POK_VarDereference, clang::threadSafety::POK_VarAccess, clang::threadSafety::POK_FunctionCall, clang::threadSafety::POK_PassByRef,
  clang::threadSafety::POK_PtPassByRef
}
enum  clang::threadSafety::LockKind { clang::threadSafety::LK_Shared, clang::threadSafety::LK_Exclusive, clang::threadSafety::LK_Generic }
enum  clang::threadSafety::AccessKind { clang::threadSafety::AK_Read, clang::threadSafety::AK_Written }
enum  clang::threadSafety::LockErrorKind { clang::threadSafety::LEK_LockedSomeLoopIterations, clang::threadSafety::LEK_LockedSomePredecessors, clang::threadSafety::LEK_LockedAtEndOfFunction, clang::threadSafety::LEK_NotLockedAtEndOfFunction }

Functions

void clang::threadSafety::runThreadSafetyAnalysis (AnalysisDeclContext &AC, ThreadSafetyHandler &Handler)
 Check a function's CFG for thread-safety violations.
LockKind clang::threadSafety::getLockKindFromAccessKind (AccessKind AK)
 Helper function that returns a LockKind required for the given level of access.