/// Note that a checker has a name (e.g.: 'NullDereference'), and a fullname,
/// that is autogenerated with the help of the ParentPackage field, that also
/// includes package names (e.g.: 'core.NullDereference').
+/// Example:
+/// def DereferenceChecker : Checker<"NullDereference">,
+/// HelpText<"Check for dereferences of null pointers">;
class Checker<string name = ""> {
- string CheckerName = name;
- string HelpText;
- bits<2> Documentation;
- Package ParentPackage;
+ string CheckerName = name;
+ string HelpText;
+ list<Checker> Dependencies;
+ bits<2> Documentation;
+ Package ParentPackage;
+}
+
+/// Describes dependencies in between checkers. For example, InnerPointerChecker
+/// relies on information MallocBase gathers.
+/// Example:
+/// def InnerPointerChecker : Checker<"InnerPointer">,
+/// HelpText<"Check for inner pointers of C++ containers used after "
+/// "re/deallocation">,
+/// Dependencies<[MallocBase]>;
+class Dependencies<list<Checker> Deps = []> {
+ list<Checker> Dependencies = Deps;
}
HelpText<"Check for undefined results of binary operators">,
Documentation<HasDocumentation>;
+def StackAddrEscapeBase : Checker<"StackAddrEscapeBase">,
+ HelpText<"Generate information about stack address escapes.">,
+ Documentation<NotDocumented>;
+
def StackAddrEscapeChecker : Checker<"StackAddressEscape">,
HelpText<"Check that addresses to stack memory do not escape the function">,
+ Dependencies<[StackAddrEscapeBase]>,
Documentation<HasDocumentation>;
def DynamicTypePropagation : Checker<"DynamicTypePropagation">,
HelpText<"Check for logical errors for function calls and Objective-C "
"message expressions (e.g., uninitialized arguments, null function "
"pointers, and pointer to undefined variables)">,
+ Dependencies<[CallAndMessageChecker]>,
Documentation<HasAlphaDocumentation>;
def TestAfterDivZeroChecker : Checker<"TestAfterDivZero">,
def StackAddrAsyncEscapeChecker : Checker<"StackAddressAsyncEscape">,
HelpText<"Check that addresses to stack memory do not escape the function">,
+ Dependencies<[StackAddrEscapeBase]>,
Documentation<HasAlphaDocumentation>;
} // end "alpha.core"
+//===----------------------------------------------------------------------===//
+// Nullability checkers.
+//===----------------------------------------------------------------------===//
+
let ParentPackage = Nullability in {
+def NullabilityBase : Checker<"NullabilityBase">,
+ HelpText<"Stores information during the analysis about nullability.">,
+ Documentation<NotDocumented>;
+
def NullPassedToNonnullChecker : Checker<"NullPassedToNonnull">,
HelpText<"Warns when a null pointer is passed to a pointer which has a "
"_Nonnull type.">,
+ Dependencies<[NullabilityBase]>,
Documentation<HasDocumentation>;
def NullReturnedFromNonnullChecker : Checker<"NullReturnedFromNonnull">,
def NullableDereferencedChecker : Checker<"NullableDereferenced">,
HelpText<"Warns when a nullable pointer is dereferenced.">,
+ Dependencies<[NullabilityBase]>,
Documentation<HasDocumentation>;
def NullablePassedToNonnullChecker : Checker<"NullablePassedToNonnull">,
HelpText<"Warns when a nullable pointer is passed to a pointer which has a "
"_Nonnull type.">,
+ Dependencies<[NullabilityBase]>,
Documentation<HasDocumentation>;
def NullableReturnedFromNonnullChecker : Checker<"NullableReturnedFromNonnull">,
HelpText<"Warns when a nullable pointer is returned from a function that has "
"_Nonnull return type.">,
+ Dependencies<[NullabilityBase]>,
Documentation<NotDocumented>;
} // end "nullability"
+//===----------------------------------------------------------------------===//
+// APIModeling.
+//===----------------------------------------------------------------------===//
+
let ParentPackage = APIModeling in {
def StdCLibraryFunctionsChecker : Checker<"StdCLibraryFunctions">,
} // end "core.uninitialized"
+//===----------------------------------------------------------------------===//
+// Unix API checkers.
+//===----------------------------------------------------------------------===//
+
+let ParentPackage = CString in {
+
+def CStringModeling : Checker<"CStringModeling">,
+ HelpText<"The base of several CString related checkers. On it's own it emits "
+ "no reports, but adds valuable information to the analysis when "
+ "enabled.">,
+ Documentation<NotDocumented>;
+
+def CStringNullArg : Checker<"NullArg">,
+ HelpText<"Check for null pointers being passed as arguments to C string "
+ "functions">,
+ Dependencies<[CStringModeling]>,
+ Documentation<HasDocumentation>;
+
+def CStringSyntaxChecker : Checker<"BadSizeArg">,
+ HelpText<"Check the size argument passed into C string functions for common "
+ "erroneous patterns">,
+ Dependencies<[CStringModeling]>,
+ Documentation<HasDocumentation>;
+
+} // end "unix.cstring"
+
+let ParentPackage = CStringAlpha in {
+
+def CStringOutOfBounds : Checker<"OutOfBounds">,
+ HelpText<"Check for out-of-bounds access in string functions">,
+ Dependencies<[CStringModeling]>,
+ Documentation<HasAlphaDocumentation>;
+
+def CStringBufferOverlap : Checker<"BufferOverlap">,
+ HelpText<"Checks for overlap in two buffer arguments">,
+ Dependencies<[CStringModeling]>,
+ Documentation<HasAlphaDocumentation>;
+
+def CStringNotNullTerm : Checker<"NotNullTerminated">,
+ HelpText<"Check for arguments which are not null-terminating strings">,
+ Dependencies<[CStringModeling]>,
+ Documentation<HasAlphaDocumentation>;
+
+} // end "alpha.unix.cstring"
+
+let ParentPackage = Unix in {
+
+def UnixAPIMisuseChecker : Checker<"API">,
+ HelpText<"Check calls to various UNIX/Posix functions">,
+ Documentation<HasDocumentation>;
+
+def DynamicMemoryModeling: Checker<"DynamicMemoryModeling">,
+ HelpText<"The base of several malloc() related checkers. On it's own it "
+ "emits no reports, but adds valuable information to the analysis "
+ "when enabled.">,
+ Dependencies<[CStringModeling]>,
+ Documentation<NotDocumented>;
+
+def MallocChecker: Checker<"Malloc">,
+ HelpText<"Check for memory leaks, double free, and use-after-free problems. "
+ "Traces memory managed by malloc()/free().">,
+ Dependencies<[DynamicMemoryModeling]>,
+ Documentation<HasDocumentation>;
+
+def MallocSizeofChecker : Checker<"MallocSizeof">,
+ HelpText<"Check for dubious malloc arguments involving sizeof">,
+ Documentation<HasDocumentation>;
+
+def MismatchedDeallocatorChecker : Checker<"MismatchedDeallocator">,
+ HelpText<"Check for mismatched deallocators.">,
+ Dependencies<[DynamicMemoryModeling]>,
+ Documentation<HasDocumentation>;
+
+def VforkChecker : Checker<"Vfork">,
+ HelpText<"Check for proper usage of vfork">,
+ Documentation<HasDocumentation>;
+
+} // end "unix"
+
+let ParentPackage = UnixAlpha in {
+
+def ChrootChecker : Checker<"Chroot">,
+ HelpText<"Check improper use of chroot">,
+ Documentation<HasAlphaDocumentation>;
+
+def PthreadLockChecker : Checker<"PthreadLock">,
+ HelpText<"Simple lock -> unlock checker">,
+ Documentation<HasAlphaDocumentation>;
+
+def StreamChecker : Checker<"Stream">,
+ HelpText<"Check stream handling functions">,
+ Documentation<HasAlphaDocumentation>;
+
+def SimpleStreamChecker : Checker<"SimpleStream">,
+ HelpText<"Check for misuses of stream APIs">,
+ Documentation<HasAlphaDocumentation>;
+
+def BlockInCriticalSectionChecker : Checker<"BlockInCriticalSection">,
+ HelpText<"Check for calls to blocking functions inside a critical section">,
+ Documentation<HasAlphaDocumentation>;
+
+} // end "alpha.unix"
+
//===----------------------------------------------------------------------===//
// C++ checkers.
//===----------------------------------------------------------------------===//
def InnerPointerChecker : Checker<"InnerPointer">,
HelpText<"Check for inner pointers of C++ containers used after "
"re/deallocation">,
+ Dependencies<[DynamicMemoryModeling]>,
Documentation<NotDocumented>;
def NewDeleteChecker : Checker<"NewDelete">,
HelpText<"Check for double-free and use-after-free problems. Traces memory "
"managed by new/delete.">,
+ Dependencies<[DynamicMemoryModeling]>,
Documentation<HasDocumentation>;
def NewDeleteLeaksChecker : Checker<"NewDeleteLeaks">,
HelpText<"Check for memory leaks. Traces memory managed by new/delete.">,
+ Dependencies<[NewDeleteChecker]>,
Documentation<HasDocumentation>;
def CXXSelfAssignmentChecker : Checker<"SelfAssignment">,
HelpText<"Check integer to enumeration casts for out of range values">,
Documentation<HasAlphaDocumentation>;
+def IteratorModeling : Checker<"IteratorModeling">,
+ HelpText<"Models iterators of C++ containers">,
+ Documentation<NotDocumented>;
+
def InvalidatedIteratorChecker : Checker<"InvalidatedIterator">,
HelpText<"Check for use of invalidated iterators">,
+ Dependencies<[IteratorModeling]>,
Documentation<HasAlphaDocumentation>;
def IteratorRangeChecker : Checker<"IteratorRange">,
HelpText<"Check for iterators used outside their valid ranges">,
+ Dependencies<[IteratorModeling]>,
Documentation<HasAlphaDocumentation>;
def MismatchedIteratorChecker : Checker<"MismatchedIterator">,
HelpText<"Check for use of iterators of different containers where iterators "
"of the same container are expected">,
+ Dependencies<[IteratorModeling]>,
Documentation<HasAlphaDocumentation>;
def UninitializedObjectChecker: Checker<"UninitializedObject">,
let ParentPackage = Valist in {
+def ValistBase : Checker<"ValistBase">,
+ HelpText<"Gathers information about va_lists.">,
+ Documentation<NotDocumented>;
+
def UninitializedChecker : Checker<"Uninitialized">,
HelpText<"Check for usages of uninitialized (or already released) va_lists.">,
Documentation<NotDocumented>;
def UnterminatedChecker : Checker<"Unterminated">,
HelpText<"Check for va_lists which are not released by a va_end call.">,
+ Dependencies<[ValistBase]>,
Documentation<NotDocumented>;
def CopyToSelfChecker : Checker<"CopyToSelf">,
HelpText<"Check for va_lists which are copied onto itself.">,
+ Dependencies<[ValistBase]>,
Documentation<NotDocumented>;
} // end : "valist"
let ParentPackage = InsecureAPI in {
+def SecuritySyntaxChecker : Checker<"SecuritySyntaxChecker">,
+ HelpText<"Base of various security function related checkers">,
+ Documentation<NotDocumented>;
+
def bcmp : Checker<"bcmp">,
HelpText<"Warn on uses of the 'bcmp' function">,
+ Dependencies<[SecuritySyntaxChecker]>,
Documentation<HasDocumentation>;
+
def bcopy : Checker<"bcopy">,
HelpText<"Warn on uses of the 'bcopy' function">,
+ Dependencies<[SecuritySyntaxChecker]>,
Documentation<HasDocumentation>;
+
def bzero : Checker<"bzero">,
HelpText<"Warn on uses of the 'bzero' function">,
+ Dependencies<[SecuritySyntaxChecker]>,
Documentation<HasDocumentation>;
+
def gets : Checker<"gets">,
HelpText<"Warn on uses of the 'gets' function">,
+ Dependencies<[SecuritySyntaxChecker]>,
Documentation<HasDocumentation>;
+
def getpw : Checker<"getpw">,
HelpText<"Warn on uses of the 'getpw' function">,
+ Dependencies<[SecuritySyntaxChecker]>,
Documentation<HasDocumentation>;
+
def mktemp : Checker<"mktemp">,
HelpText<"Warn on uses of the 'mktemp' function">,
+ Dependencies<[SecuritySyntaxChecker]>,
Documentation<HasDocumentation>;
+
def mkstemp : Checker<"mkstemp">,
HelpText<"Warn when 'mkstemp' is passed fewer than 6 X's in the format "
"string">,
+ Dependencies<[SecuritySyntaxChecker]>,
Documentation<HasDocumentation>;
+
def rand : Checker<"rand">,
HelpText<"Warn on uses of the 'rand', 'random', and related functions">,
+ Dependencies<[SecuritySyntaxChecker]>,
Documentation<HasDocumentation>;
+
def strcpy : Checker<"strcpy">,
HelpText<"Warn on uses of the 'strcpy' and 'strcat' functions">,
+ Dependencies<[SecuritySyntaxChecker]>,
Documentation<HasDocumentation>;
+
def vfork : Checker<"vfork">,
HelpText<"Warn on uses of the 'vfork' function">,
+ Dependencies<[SecuritySyntaxChecker]>,
Documentation<HasDocumentation>;
+
def UncheckedReturn : Checker<"UncheckedReturn">,
HelpText<"Warn on uses of functions whose return values must be always "
"checked">,
+ Dependencies<[SecuritySyntaxChecker]>,
Documentation<HasDocumentation>;
} // end "security.insecureAPI"
def FloatLoopCounter : Checker<"FloatLoopCounter">,
HelpText<"Warn on using a floating point value as a loop counter (CERT: "
"FLP30-C, FLP30-CPP)">,
+ Dependencies<[SecuritySyntaxChecker]>,
Documentation<HasDocumentation>;
} // end "security"
} // end "alpha.security.taint"
//===----------------------------------------------------------------------===//
-// Unix API checkers.
+// Mac OS X, Cocoa, and Core Foundation checkers.
//===----------------------------------------------------------------------===//
-let ParentPackage = Unix in {
-
-def UnixAPIMisuseChecker : Checker<"API">,
- HelpText<"Check calls to various UNIX/Posix functions">,
- Documentation<HasDocumentation>;
-
-def MallocChecker: Checker<"Malloc">,
- HelpText<"Check for memory leaks, double free, and use-after-free problems. "
- "Traces memory managed by malloc()/free().">,
- Documentation<HasDocumentation>;
-
-def MallocSizeofChecker : Checker<"MallocSizeof">,
- HelpText<"Check for dubious malloc arguments involving sizeof">,
- Documentation<HasDocumentation>;
-
-def MismatchedDeallocatorChecker : Checker<"MismatchedDeallocator">,
- HelpText<"Check for mismatched deallocators.">,
- Documentation<HasDocumentation>;
-
-def VforkChecker : Checker<"Vfork">,
- HelpText<"Check for proper usage of vfork">,
- Documentation<HasDocumentation>;
-
-} // end "unix"
-
-let ParentPackage = UnixAlpha in {
-
-def ChrootChecker : Checker<"Chroot">,
- HelpText<"Check improper use of chroot">,
- Documentation<HasAlphaDocumentation>;
-
-def PthreadLockChecker : Checker<"PthreadLock">,
- HelpText<"Simple lock -> unlock checker">,
- Documentation<HasAlphaDocumentation>;
-
-def StreamChecker : Checker<"Stream">,
- HelpText<"Check stream handling functions">,
- Documentation<HasAlphaDocumentation>;
-
-def SimpleStreamChecker : Checker<"SimpleStream">,
- HelpText<"Check for misuses of stream APIs">,
- Documentation<HasAlphaDocumentation>;
-
-def BlockInCriticalSectionChecker : Checker<"BlockInCriticalSection">,
- HelpText<"Check for calls to blocking functions inside a critical section">,
- Documentation<HasAlphaDocumentation>;
-
-} // end "alpha.unix"
-
-let ParentPackage = CString in {
-
-def CStringNullArg : Checker<"NullArg">,
- HelpText<"Check for null pointers being passed as arguments to C string "
- "functions">,
- Documentation<HasDocumentation>;
-
-def CStringSyntaxChecker : Checker<"BadSizeArg">,
- HelpText<"Check the size argument passed into C string functions for common "
- "erroneous patterns">,
- Documentation<HasDocumentation>;
-
-} // end "unix.cstring"
-
-let ParentPackage = CStringAlpha in {
-
-def CStringOutOfBounds : Checker<"OutOfBounds">,
- HelpText<"Check for out-of-bounds access in string functions">,
- Documentation<HasAlphaDocumentation>;
-
-def CStringBufferOverlap : Checker<"BufferOverlap">,
- HelpText<"Checks for overlap in two buffer arguments">,
- Documentation<HasAlphaDocumentation>;
-
-def CStringNotNullTerm : Checker<"NotNullTerminated">,
- HelpText<"Check for arguments which are not null-terminating strings">,
- Documentation<HasAlphaDocumentation>;
+let ParentPackage = Cocoa in {
-} // end "alpha.unix.cstring"
+def RetainCountBase : Checker<"RetainCountBase">,
+ HelpText<"Common base of various retain count related checkers">,
+ Documentation<NotDocumented>;
-//===----------------------------------------------------------------------===//
-// Mac OS X, Cocoa, and Core Foundation checkers.
-//===----------------------------------------------------------------------===//
+} // end "osx.cocoa"
let ParentPackage = OSX in {
+def NSOrCFErrorDerefChecker : Checker<"NSOrCFErrorDerefChecker">,
+ HelpText<"Implementation checker for NSErrorChecker and CFErrorChecker">,
+ Documentation<NotDocumented>;
+
def NumberObjectConversionChecker : Checker<"NumberObjectConversion">,
HelpText<"Check for erroneous conversions of objects representing numbers "
"into numbers">,
Documentation<NotDocumented>;
def OSObjectRetainCountChecker : Checker<"OSObjectRetainCount">,
- HelpText<"Check for leaks and improper reference count management for OSObject">,
+ HelpText<"Check for leaks and improper reference count management for "
+ "OSObject">,
+ Dependencies<[RetainCountBase]>,
Documentation<NotDocumented>;
} // end "osx"
def NSErrorChecker : Checker<"NSError">,
HelpText<"Check usage of NSError** parameters">,
+ Dependencies<[NSOrCFErrorDerefChecker]>,
Documentation<HasDocumentation>;
def RetainCountChecker : Checker<"RetainCount">,
HelpText<"Check for leaks and improper reference count management">,
+ Dependencies<[RetainCountBase]>,
Documentation<HasDocumentation>;
def ObjCGenericsChecker : Checker<"ObjCGenerics">,
HelpText<"Check for type errors when using Objective-C generics">,
+ Dependencies<[DynamicTypePropagation]>,
Documentation<HasDocumentation>;
def ObjCDeallocChecker : Checker<"Dealloc">,
let ParentPackage = CocoaAlpha in {
+def IvarInvalidationModeling : Checker<"IvarInvalidationModeling">,
+ HelpText<"Gathers information for annotation driven invalidation checking "
+ "for classes that contains a method annotated with "
+ "'objc_instance_variable_invalidator'">,
+ Documentation<NotDocumented>;
+
def InstanceVariableInvalidation : Checker<"InstanceVariableInvalidation">,
HelpText<"Check that the invalidatable instance variables are invalidated in "
"the methods annotated with objc_instance_variable_invalidator">,
+ Dependencies<[IvarInvalidationModeling]>,
Documentation<HasAlphaDocumentation>;
def MissingInvalidationMethod : Checker<"MissingInvalidationMethod">,
HelpText<"Check that the invalidation methods are present in classes that "
"contain invalidatable instance variables">,
+ Dependencies<[IvarInvalidationModeling]>,
Documentation<HasAlphaDocumentation>;
def DirectIvarAssignment : Checker<"DirectIvarAssignment">,
Checker<"DirectIvarAssignmentForAnnotatedFunctions">,
HelpText<"Check for direct assignments to instance variables in the methods "
"annotated with objc_no_direct_instance_variable_assignment">,
+ Dependencies<[DirectIvarAssignment]>,
Documentation<HasAlphaDocumentation>;
} // end "alpha.osx.cocoa"
def CFErrorChecker : Checker<"CFError">,
HelpText<"Check usage of CFErrorRef* parameters">,
+ Dependencies<[NSOrCFErrorDerefChecker]>,
Documentation<HasDocumentation>;
} // end "osx.coreFoundation"
using InitializationFunction = void (*)(CheckerManager &);
using ShouldRegisterFunction = bool (*)(const LangOptions &);
+ struct CheckerInfo;
+
+ using CheckerInfoList = std::vector<CheckerInfo>;
+ using CheckerInfoListRange = llvm::iterator_range<CheckerInfoList::iterator>;
+ using ConstCheckerInfoList = llvm::SmallVector<const CheckerInfo *, 0>;
+ using CheckerInfoSet = llvm::SetVector<const CheckerInfo *>;
+
struct CheckerInfo {
enum class StateFromCmdLine {
// This checker wasn't explicitly enabled or disabled.
StringRef DocumentationUri;
StateFromCmdLine State = StateFromCmdLine::State_Unspecified;
+ ConstCheckerInfoList Dependencies;
+
bool isEnabled(const LangOptions &LO) const {
return State == StateFromCmdLine::State_Enabled && ShouldRegister(LO);
}
+ bool isDisabled(const LangOptions &LO) const {
+ return State == StateFromCmdLine::State_Disabled && ShouldRegister(LO);
+ }
+
CheckerInfo(InitializationFunction Fn, ShouldRegisterFunction sfn,
StringRef Name, StringRef Desc, StringRef DocsUri)
: Initialize(Fn), ShouldRegister(sfn), FullName(Name), Desc(Desc),
};
using StateFromCmdLine = CheckerInfo::StateFromCmdLine;
- using CheckerInfoList = std::vector<CheckerInfo>;
- using CheckerInfoListRange = llvm::iterator_range<CheckerInfoList::iterator>;
- using CheckerInfoSet = llvm::SetVector<const CheckerRegistry::CheckerInfo *>;
private:
template <typename T>
&CheckerRegistry::returnTrue<T>, FullName, Desc, DocsUri);
}
+ /// Makes the checker with the full name \p fullName depends on the checker
+ /// called \p dependency.
+ void addDependency(StringRef fullName, StringRef dependency) {
+ auto CheckerThatNeedsDeps =
+ [&fullName](const CheckerInfo &Chk) { return Chk.FullName == fullName; };
+ auto Dependency =
+ [&dependency](const CheckerInfo &Chk) {
+ return Chk.FullName == dependency;
+ };
+
+ auto CheckerIt = llvm::find_if(Checkers, CheckerThatNeedsDeps);
+ assert(CheckerIt != Checkers.end() &&
+ "Failed to find the checker while attempting to set up it's "
+ "dependencies!");
+
+ auto DependencyIt = llvm::find_if(Checkers, Dependency);
+ assert(DependencyIt != Checkers.end() &&
+ "Failed to find the dependency of a checker!");
+
+ CheckerIt->Dependencies.push_back(&*DependencyIt);
+ }
+
// FIXME: This *really* should be added to the frontend flag descriptions.
/// Initializes a CheckerManager by calling the initialization functions for
/// all checkers specified by the given CheckerOptInfo list. The order of this
void printList(raw_ostream &out) const;
private:
+ /// Collect all enabled checkers. The returned container preserves the order
+ /// of insertion, as dependencies have to be enabled before the checkers that
+ /// depend on them.
CheckerInfoSet getEnabledCheckers() const;
/// Return an iterator range of mutable CheckerInfos \p CmdLineArg applies to.
C.addTransition(state);
}
+void ento::registerCStringModeling(CheckerManager &Mgr) {
+ Mgr.registerChecker<CStringChecker>();
+}
+
+bool ento::shouldRegisterCStringModeling(const LangOptions &LO) {
+ return true;
+}
+
#define REGISTER_CHECKER(name) \
void ento::register##name(CheckerManager &mgr) { \
CStringChecker *checker = mgr.registerChecker<CStringChecker>(); \
REGISTER_CHECKER(CStringOutOfBounds)
REGISTER_CHECKER(CStringBufferOverlap)
REGISTER_CHECKER(CStringNotNullTerm)
-
- void ento::registerCStringCheckerBasic(CheckerManager &Mgr) {
- Mgr.registerChecker<CStringChecker>();
- }
namespace {
-struct ChecksFilter {
- DefaultBool Check_CallAndMessageUnInitRefArg;
- DefaultBool Check_CallAndMessageChecker;
-
- CheckName CheckName_CallAndMessageUnInitRefArg;
- CheckName CheckName_CallAndMessageChecker;
-};
-
class CallAndMessageChecker
: public Checker< check::PreStmt<CallExpr>,
check::PreStmt<CXXDeleteExpr>,
mutable std::unique_ptr<BugType> BT_call_few_args;
public:
- ChecksFilter Filter;
+ DefaultBool Check_CallAndMessageUnInitRefArg;
+ CheckName CheckName_CallAndMessageUnInitRefArg;
void checkPreStmt(const CallExpr *CE, CheckerContext &C) const;
void checkPreStmt(const CXXDeleteExpr *DE, CheckerContext &C) const;
CheckerContext &C, const SVal &V, SourceRange ArgRange, const Expr *ArgEx,
std::unique_ptr<BugType> &BT, const ParmVarDecl *ParamDecl, const char *BD,
int ArgumentNumber) const {
- if (!Filter.Check_CallAndMessageUnInitRefArg)
+ if (!Check_CallAndMessageUnInitRefArg)
return false;
// No parameter declaration available, i.e. variadic function argument.
C.addTransition(state);
}
-#define REGISTER_CHECKER(name) \
- void ento::register##name(CheckerManager &mgr) { \
- CallAndMessageChecker *Checker = \
- mgr.registerChecker<CallAndMessageChecker>(); \
- Checker->Filter.Check_##name = true; \
- Checker->Filter.CheckName_##name = mgr.getCurrentCheckName(); \
- } \
- \
- bool ento::shouldRegister##name(const LangOptions &LO) { \
- return true; \
- }
+void ento::registerCallAndMessageChecker(CheckerManager &mgr) {
+ mgr.registerChecker<CallAndMessageChecker>();
+}
+
+bool ento::shouldRegisterCallAndMessageChecker(const LangOptions &LO) {
+ return true;
+}
-REGISTER_CHECKER(CallAndMessageUnInitRefArg)
-REGISTER_CHECKER(CallAndMessageChecker)
+void ento::registerCallAndMessageUnInitRefArg(CheckerManager &mgr) {
+ CallAndMessageChecker *Checker =
+ mgr.registerChecker<CallAndMessageChecker>();
+ Checker->Check_CallAndMessageUnInitRefArg = true;
+ Checker->CheckName_CallAndMessageUnInitRefArg = mgr.getCurrentCheckName();
+}
+
+bool ento::shouldRegisterCallAndMessageUnInitRefArg(const LangOptions &LO) {
+ return true;
+}
};
}
+void ento::registerSecuritySyntaxChecker(CheckerManager &mgr) {
+ mgr.registerChecker<SecuritySyntaxChecker>();
+}
+
+bool ento::shouldRegisterSecuritySyntaxChecker(const LangOptions &LO) {
+ return true;
+}
+
#define REGISTER_CHECKER(name) \
void ento::register##name(CheckerManager &mgr) { \
SecuritySyntaxChecker *checker = \
namespace ento {
-/// Register the checker which evaluates CString API calls.
-void registerCStringCheckerBasic(CheckerManager &Mgr);
-
/// Register the part of MallocChecker connected to InnerPointerChecker.
void registerInnerPointerCheckerAux(CheckerManager &Mgr);
} // namespace
+void ento::registerIteratorModeling(CheckerManager &mgr) {
+ mgr.registerChecker<IteratorChecker>();
+}
+
+bool ento::shouldRegisterIteratorModeling(const LangOptions &LO) {
+ return true;
+}
+
#define REGISTER_CHECKER(name) \
void ento::register##name(CheckerManager &Mgr) { \
auto *checker = Mgr.registerChecker<IteratorChecker>(); \
};
} // end anonymous namespace
+void ento::registerIvarInvalidationModeling(CheckerManager &mgr) {
+ mgr.registerChecker<IvarInvalidationChecker>();
+}
+
+bool ento::shouldRegisterIvarInvalidationModeling(const LangOptions &LO) {
+ return true;
+}
+
#define REGISTER_CHECKER(name) \
void ento::register##name(CheckerManager &mgr) { \
IvarInvalidationChecker *checker = \
} // end namespace ento
} // end namespace clang
-void ento::registerNewDeleteLeaksChecker(CheckerManager &mgr) {
- registerCStringCheckerBasic(mgr);
- MallocChecker *checker = mgr.registerChecker<MallocChecker>();
- checker->IsOptimistic = mgr.getAnalyzerOptions().getCheckerBooleanOption(
- "Optimistic", false, checker);
- checker->ChecksEnabled[MallocChecker::CK_NewDeleteLeaksChecker] = true;
- checker->CheckNames[MallocChecker::CK_NewDeleteLeaksChecker] =
- mgr.getCurrentCheckName();
- // We currently treat NewDeleteLeaks checker as a subchecker of NewDelete
- // checker.
- if (!checker->ChecksEnabled[MallocChecker::CK_NewDeleteChecker]) {
- checker->ChecksEnabled[MallocChecker::CK_NewDeleteChecker] = true;
- // FIXME: This does not set the correct name, but without this workaround
- // no name will be set at all.
- checker->CheckNames[MallocChecker::CK_NewDeleteChecker] =
- mgr.getCurrentCheckName();
- }
-}
-
-bool ento::shouldRegisterNewDeleteLeaksChecker(const LangOptions &LO) {
- return true;
-}
-
// Intended to be used in InnerPointerChecker to register the part of
// MallocChecker connected to it.
void ento::registerInnerPointerCheckerAux(CheckerManager &mgr) {
- registerCStringCheckerBasic(mgr);
MallocChecker *checker = mgr.registerChecker<MallocChecker>();
checker->IsOptimistic = mgr.getAnalyzerOptions().getCheckerBooleanOption(
- "Optimistic", false, checker);
+ "Optimistic", false, checker);
checker->ChecksEnabled[MallocChecker::CK_InnerPointerChecker] = true;
checker->CheckNames[MallocChecker::CK_InnerPointerChecker] =
mgr.getCurrentCheckName();
}
+void ento::registerDynamicMemoryModeling(CheckerManager &mgr) {
+ mgr.registerChecker<MallocChecker>();
+}
+
+bool ento::shouldRegisterDynamicMemoryModeling(const LangOptions &LO) {
+ return true;
+}
+
#define REGISTER_CHECKER(name) \
void ento::register##name(CheckerManager &mgr) { \
- registerCStringCheckerBasic(mgr); \
MallocChecker *checker = mgr.registerChecker<MallocChecker>(); \
checker->IsOptimistic = mgr.getAnalyzerOptions().getCheckerBooleanOption( \
"Optimistic", false, checker); \
REGISTER_CHECKER(MallocChecker)
REGISTER_CHECKER(NewDeleteChecker)
+REGISTER_CHECKER(NewDeleteLeaksChecker)
REGISTER_CHECKER(MismatchedDeallocatorChecker)
return TT->getDecl()->getIdentifier() == II;
}
+void ento::registerNSOrCFErrorDerefChecker(CheckerManager &mgr) {
+ mgr.registerChecker<NSOrCFErrorDerefChecker>();
+}
+
+bool ento::shouldRegisterNSOrCFErrorDerefChecker(const LangOptions &LO) {
+ return true;
+}
+
void ento::registerNSErrorChecker(CheckerManager &mgr) {
mgr.registerChecker<NSErrorMethodChecker>();
NSOrCFErrorDerefChecker *checker =
}
}
+void ento::registerNullabilityBase(CheckerManager &mgr) {
+ mgr.registerChecker<NullabilityChecker>();
+}
+
+bool ento::shouldRegisterNullabilityBase(const LangOptions &LO) {
+ return true;
+}
+
#define REGISTER_CHECKER(name, trackingRequired) \
void ento::register##name##Checker(CheckerManager &mgr) { \
NullabilityChecker *checker = mgr.registerChecker<NullabilityChecker>(); \
// Checker registration.
//===----------------------------------------------------------------------===//
+void ento::registerRetainCountBase(CheckerManager &Mgr) {
+ Mgr.registerChecker<RetainCountChecker>();
+}
+
+bool ento::shouldRegisterRetainCountBase(const LangOptions &LO) {
+ return true;
+}
+
void ento::registerRetainCountChecker(CheckerManager &Mgr) {
auto *Chk = Mgr.registerChecker<RetainCountChecker>();
Chk->TrackObjCAndCFObjects = true;
}
}
+void ento::registerStackAddrEscapeBase(CheckerManager &mgr) {
+ mgr.registerChecker<StackAddrEscapeChecker>();
+}
+
+bool ento::shouldRegisterStackAddrEscapeBase(const LangOptions &LO) {
+ return true;
+}
+
#define REGISTER_CHECKER(name) \
void ento::register##name(CheckerManager &Mgr) { \
StackAddrEscapeChecker *Chk = \
return std::make_shared<PathDiagnosticEventPiece>(Pos, Msg, true);
}
+void ento::registerValistBase(CheckerManager &mgr) {
+ mgr.registerChecker<ValistChecker>();
+}
+
+bool ento::shouldRegisterValistBase(const LangOptions &LO) {
+ return true;
+}
+
#define REGISTER_CHECKER(name) \
void ento::register##name##Checker(CheckerManager &mgr) { \
ValistChecker *checker = mgr.registerChecker<ValistChecker>(); \
// that's ASCIIbetically last?
llvm::sort(Checkers, checkerNameLT);
+#define GET_CHECKER_DEPENDENCIES
+
+#define CHECKER_DEPENDENCY(FULLNAME, DEPENDENCY) \
+ addDependency(FULLNAME, DEPENDENCY);
+
+#include "clang/StaticAnalyzer/Checkers/Checkers.inc"
+#undef CHECKER_DEPENDENCY
+#undef GET_CHECKER_DEPENDENCIES
+
// Parse '-analyzer-checker' and '-analyzer-disable-checker' options from the
// command line.
for (const std::pair<std::string, bool> &opt : AnOpts.CheckersControlList) {
}
}
+/// Collects dependencies in \p ret, returns false on failure.
+static bool collectDependenciesImpl(
+ const CheckerRegistry::ConstCheckerInfoList &deps,
+ const LangOptions &LO,
+ CheckerRegistry::CheckerInfoSet &ret);
+
+/// Collects dependenies in \p enabledCheckers. Return None on failure.
+LLVM_NODISCARD
+static llvm::Optional<CheckerRegistry::CheckerInfoSet> collectDependencies(
+ const CheckerRegistry::CheckerInfo &checker, const LangOptions &LO) {
+
+ CheckerRegistry::CheckerInfoSet ret;
+ // Add dependencies to the enabled checkers only if all of them can be
+ // enabled.
+ if (!collectDependenciesImpl(checker.Dependencies, LO, ret))
+ return None;
+
+ return ret;
+}
+
+static bool collectDependenciesImpl(
+ const CheckerRegistry::ConstCheckerInfoList &deps,
+ const LangOptions &LO,
+ CheckerRegistry::CheckerInfoSet &ret) {
+
+ for (const CheckerRegistry::CheckerInfo *dependency : deps) {
+
+ if (dependency->isDisabled(LO))
+ return false;
+
+ // Collect dependencies recursively.
+ if (!collectDependenciesImpl(dependency->Dependencies, LO, ret))
+ return false;
+
+ ret.insert(dependency);
+ }
+
+ return true;
+}
+
CheckerRegistry::CheckerInfoSet CheckerRegistry::getEnabledCheckers() const {
CheckerInfoSet enabledCheckers;
for (const CheckerInfo &checker : Checkers) {
- if (checker.isEnabled(LangOpts))
- enabledCheckers.insert(&checker);
+ if (!checker.isEnabled(LangOpts))
+ continue;
+
+ // Recursively enable it's dependencies.
+ llvm::Optional<CheckerInfoSet> deps =
+ collectDependencies(checker, LangOpts);
+
+ if (!deps) {
+ // If we failed to enable any of the dependencies, don't enable this
+ // checker.
+ continue;
+ }
+
+ // Note that set_union also preserves the order of insertion.
+ enabledCheckers.set_union(*deps);
+
+ // Enable the checker.
+ enabledCheckers.insert(&checker);
}
return enabledCheckers;
}
void CheckerRegistry::initializeManager(CheckerManager &checkerMgr) const {
-
// Collect checkers enabled by the options.
CheckerInfoSet enabledCheckers = getEnabledCheckers();
<plist version="1.0">
<dict>
<key>clang_version</key>
-<string>clang version 8.0.0 </string>
<key>diagnostics</key>
<array>
<dict>
<key>description</key><string>Potential leak of an object stored into 'value'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>29a10ca4af622b6146ca082e49d919d6</string>
+ <key>issue_hash_content_of_line_in_context</key><string>b2b15a95787e594ff79f02c600e9d357</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar8331641</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Potential leak of an object stored into 'foo'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>f533db5cbb9c20d171f9f92105789dc4</string>
+ <key>issue_hash_content_of_line_in_context</key><string>ef342aeb2f2719117ddd4ef1b72f5ba7</string>
<key>issue_context_kind</key><string>Objective-C method</string>
<key>issue_context</key><string>test2</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Potential leak of an object stored into 'foo'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>5616a7601faa1a8c2ac56fa1b595b172</string>
+ <key>issue_hash_content_of_line_in_context</key><string>f81f51dd154d0a11cab412a1cd1cd095</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>longLines</string>
<key>issue_hash_function_offset</key><string>1</string>
</array>
<key>files</key>
<array>
- <string>/clang/test/Analysis/edges-new.mm</string>
</array>
</dict>
</plist>
<key>description</key><string>Nullable pointer is passed to a callee that requires a non-null 1st parameter</string>
<key>category</key><string>Memory error</string>
<key>type</key><string>Nullability</string>
- <key>check_name</key><string>nullability.NullPassedToNonnull</string>
+ <key>check_name</key><string>nullability.NullabilityBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>b6bc8126de8e6eb3375483a656fe858d</string>
+ <key>issue_hash_content_of_line_in_context</key><string>ff735bea0eb12d4d172b139143c32365</string>
<key>issue_context_kind</key><string>Objective-C method</string>
<key>issue_context</key><string>method</string>
<key>issue_hash_function_offset</key><string>3</string>
<plist version="1.0">
<dict>
<key>clang_version</key>
-<string>clang version 8.0.0 </string>
<key>diagnostics</key>
<array>
<dict>
<key>description</key><string>Potential leak of an object stored into 'date'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>61d185b2522d15fb327f6784e0217adf</string>
+ <key>issue_hash_content_of_line_in_context</key><string>7bd4a6e187407677b2d9e717576818bf</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_cf_leak</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Potential leak of an object stored into 'obj5'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>5baa7d5f38420d0a035aa61607675f3e</string>
+ <key>issue_hash_content_of_line_in_context</key><string>0aed4f65cb3dba7331f9319fd1ceb003</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>from_cf</string>
<key>issue_hash_function_offset</key><string>7</string>
<key>description</key><string>Potential leak of an object stored into 'obj6'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>4665e04694fd55e7c4ed7a67860b3b74</string>
+ <key>issue_hash_content_of_line_in_context</key><string>0851961d40a4c8331ebe713f4a3e05f4</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>from_cf</string>
<key>issue_hash_function_offset</key><string>8</string>
<key>description</key><string>Potential leak of an object stored into 'date'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>798e65f80df0526369f9bb240e3d91fd</string>
+ <key>issue_hash_content_of_line_in_context</key><string>00045bff3b7c26fe7cb80a71f512575c</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_objc_unretainedObject</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Potential leak of an object of type 'CFStringRef'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>e1fbcc142b678b3c2c43737ee35b64d9</string>
+ <key>issue_hash_content_of_line_in_context</key><string>9f258122568ea8763047e98db8a52647</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_objc_arrays</string>
<key>issue_hash_function_offset</key><string>24</string>
<key>description</key><string>Potential leak of an object stored into 'o'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>e300a279615a384d2b310329651d3978</string>
+ <key>issue_hash_content_of_line_in_context</key><string>8187b0ba5cadd42594120fe05d871502</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar11059275_positive</string>
<key>issue_hash_function_offset</key><string>1</string>
</array>
<key>files</key>
<array>
- <string>/clang/test/Analysis/objc-arc.m</string>
</array>
</dict>
</plist>
<plist version="1.0">
<dict>
<key>clang_version</key>
-<string>clang version 8.0.0 </string>
<key>diagnostics</key>
<array>
<dict>
<key>description</key><string>Potential leak of an object of type 'NSNumber *'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>500e2bbda41c8086771ad98b6bcfdc50</string>
+ <key>issue_hash_content_of_line_in_context</key><string>c204ce6cce660a7714c801bdf9183431</string>
<key>location</key>
<dict>
<key>line</key><integer>53</integer>
</array>
<key>files</key>
<array>
- <string>/Volumes/Transcend/code/monorepo/llvm-project/clang/test/Analysis/objc-radar17039661.m</string>
</array>
</dict>
</plist>
<plist version="1.0">
<dict>
<key>clang_version</key>
-<string>clang version 8.0.0 </string>
<key>diagnostics</key>
<array>
<dict>
<key>description</key><string>Potential leak of an object stored into 'value'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>29a10ca4af622b6146ca082e49d919d6</string>
+ <key>issue_hash_content_of_line_in_context</key><string>b2b15a95787e594ff79f02c600e9d357</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar8331641</string>
<key>issue_hash_function_offset</key><string>2</string>
</array>
<key>files</key>
<array>
- <string>/clang/test/Analysis/plist-output-alternate.m</string>
</array>
</dict>
</plist>
<plist version="1.0">
<dict>
<key>clang_version</key>
-<string>clang version 8.0.0 </string>
<key>diagnostics</key>
<array>
<dict>
<key>description</key><string>Potential leak of an object stored into 'foo'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>f533db5cbb9c20d171f9f92105789dc4</string>
+ <key>issue_hash_content_of_line_in_context</key><string>ef342aeb2f2719117ddd4ef1b72f5ba7</string>
<key>issue_context_kind</key><string>Objective-C method</string>
<key>issue_context</key><string>test2</string>
<key>issue_hash_function_offset</key><string>2</string>
</array>
<key>files</key>
<array>
- <string>/clang/test/Analysis/plist-output.m</string>
</array>
</dict>
</plist>
<plist version="1.0">
<dict>
<key>clang_version</key>
-<string>clang version 8.0.0 </string>
<key>diagnostics</key>
<array>
<dict>
<key>description</key><string>Potential leak of an object stored into 'leaked'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>d21e9660cc6434ef84a51f39ffcdce86</string>
+ <key>issue_hash_content_of_line_in_context</key><string>fc2476fe550128eebe2a0a8fa4299a59</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>creationViaAlloc</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'leaked'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>f8ec2601a04113e567aa1d09c9902c91</string>
+ <key>issue_hash_content_of_line_in_context</key><string>31ad4a19f94c8994ebf7e887ed4ab840</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>creationViaCFCreate</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'leaked'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>dd26a8ad9a7a057feaa636974b43ccb0</string>
+ <key>issue_hash_content_of_line_in_context</key><string>1b654ea7bbef1493beda9e0a667dd859</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>acquisitionViaMethod</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'leaked'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>2f2de5d7fe728958585598b619069e5a</string>
+ <key>issue_hash_content_of_line_in_context</key><string>3fc42b0b859923347e789ad601d29b2a</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>acquisitionViaProperty</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'leaked'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>1c02b65e83dad1b22270ff5a71de3118</string>
+ <key>issue_hash_content_of_line_in_context</key><string>0b4d42c9cc01d55bc281c067f1cc1c3d</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>acquisitionViaCFFunction</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Reference-counted object is used after it is released</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Use-after-release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>03c23f0f82d7f2fd880a22e0d9cf14b9</string>
+ <key>issue_hash_content_of_line_in_context</key><string>baa3d5ecb7824a6997e0734ad148ec55</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>explicitDealloc</string>
<key>issue_hash_function_offset</key><string>3</string>
<key>description</key><string>Reference-counted object is used after it is released</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Use-after-release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>6f1b3f0c6c7f79f1af9b313273a01e92</string>
+ <key>issue_hash_content_of_line_in_context</key><string>ce73a05e0a1055b4b451f5015edbd6ec</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>implicitDealloc</string>
<key>issue_hash_function_offset</key><string>3</string>
<key>description</key><string>Object autoreleased too many times</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Object autoreleased too many times</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>cb5e4205a8f925230a70715914a2e3d2</string>
+ <key>issue_hash_content_of_line_in_context</key><string>b8cbd4dae812cd8d8faaf3b48dad2021</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>overAutorelease</string>
<key>issue_hash_function_offset</key><string>4</string>
<key>description</key><string>Object autoreleased too many times</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Object autoreleased too many times</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>1edd178e5ad76c79ce9812f519e8f467</string>
+ <key>issue_hash_content_of_line_in_context</key><string>ee96f7e22e32b24d677efa45b2395915</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>autoreleaseUnowned</string>
<key>issue_hash_function_offset</key><string>3</string>
<key>description</key><string>Potential leak of an object stored into 'leaked'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>3f08690fae9687c29bb23b7a7cb7995b</string>
+ <key>issue_hash_content_of_line_in_context</key><string>12887d3520c4c9fd03995feeb69967ec</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>makeCollectableIgnored</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Object with a +0 retain count returned to caller where a +1 (owning) retain count is expected</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Method should return an owned object</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>4b621ab5f8f2ef9240699119f4d874cb</string>
+ <key>issue_hash_content_of_line_in_context</key><string>d715154641c7b248d401df12c1ce0808</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>CFCopyRuleViolation</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Potential leak of an object stored into 'object'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak of returned object</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>5248d2310322982d02e5f3d564249b4f</string>
+ <key>issue_hash_content_of_line_in_context</key><string>58d56f1d5982f5923ab07900852ea30c</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>CFGetRuleViolation</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Object with a +0 retain count returned to caller where a +1 (owning) retain count is expected</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Method should return an owned object</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>4f23ad2725fb68134cec8b8354cd295c</string>
+ <key>issue_hash_content_of_line_in_context</key><string>cc20c23c14b2363ca453c24ede3bc38d</string>
<key>issue_context_kind</key><string>Objective-C method</string>
<key>issue_context</key><string>copyViolation</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Object with a +0 retain count returned to caller where a +1 (owning) retain count is expected</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Method should return an owned object</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>da1dab126ed46b144040160ae8628460</string>
+ <key>issue_hash_content_of_line_in_context</key><string>4eefa164042de89f947573c1df2fce03</string>
<key>issue_context_kind</key><string>Objective-C method</string>
<key>issue_context</key><string>copyViolationIndexedSubscript</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Object with a +0 retain count returned to caller where a +1 (owning) retain count is expected</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Method should return an owned object</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>52877f9471b1ecdaf213b39016b84e52</string>
+ <key>issue_hash_content_of_line_in_context</key><string>e8ad4d8a073872a91d2b0225319cd521</string>
<key>issue_context_kind</key><string>Objective-C method</string>
<key>issue_context</key><string>copyViolationKeyedSubscript</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Potential leak of an object stored into 'result'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak of returned object</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>cf8c65a18ad9982cb9848a266cd9c61b</string>
+ <key>issue_hash_content_of_line_in_context</key><string>f858bd7c1720b43bd464bbec97a1cb6b</string>
<key>issue_context_kind</key><string>Objective-C method</string>
<key>issue_context</key><string>getViolation</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Object with a +0 retain count returned to caller where a +1 (owning) retain count is expected</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Method should return an owned object</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>e7b798151545b45a994592df0d27d250</string>
+ <key>issue_hash_content_of_line_in_context</key><string>4da16a9c4c9d9587418f276359c5f098</string>
<key>issue_context_kind</key><string>Objective-C method</string>
<key>issue_context</key><string>copyAutorelease</string>
<key>issue_hash_function_offset</key><string>3</string>
<key>description</key><string>Incorrect decrement of the reference count of an object that is not owned at this point by the caller</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Bad release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>4e0c810e2b301aca3f636ad7e3d6b0b8</string>
+ <key>issue_hash_content_of_line_in_context</key><string>18ba6f4fe59b182bee196c1a976e3aa2</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>testNumericLiteral</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Incorrect decrement of the reference count of an object that is not owned at this point by the caller</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Bad release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>1d054002016aa4360aaf23a4c4d8fbb7</string>
+ <key>issue_hash_content_of_line_in_context</key><string>ac4375d1ab6887c27055ee00b20a212e</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>testBoxedInt</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Incorrect decrement of the reference count of an object that is not owned at this point by the caller</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Bad release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>67ca92144b05322ee4569aea88d08595</string>
+ <key>issue_hash_content_of_line_in_context</key><string>cd2f260edad8ce1826b21acc49cba277</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>testBoxedString</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Incorrect decrement of the reference count of an object that is not owned at this point by the caller</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Bad release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>32fcec71872b8f62d8d7b1b05284b0fe</string>
+ <key>issue_hash_content_of_line_in_context</key><string>e60765ef00b3af982aacd5471a2cdb21</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>testArray</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Incorrect decrement of the reference count of an object that is not owned at this point by the caller</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Bad release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>d9584825bb1e62066879949e3ade8570</string>
+ <key>issue_hash_content_of_line_in_context</key><string>42da4f0388822b235ed56427f2e1ac1b</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>testDictionary</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Potential leak of an object of type 'MyObj *'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>eef2aef4b58abf21fcfa4bbf69e19c02</string>
+ <key>issue_hash_content_of_line_in_context</key><string>b5589615cea2321192e477d2011edf09</string>
<key>issue_context_kind</key><string>Objective-C method</string>
<key>issue_context</key><string>test</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Potential leak of an object stored into 'y'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>8c27524f691296551f9e52856b824326</string>
+ <key>issue_hash_content_of_line_in_context</key><string>b319657460942b0e8deafb79876d5479</string>
<key>issue_context_kind</key><string>Objective-C method</string>
<key>issue_context</key><string>test</string>
<key>issue_hash_function_offset</key><string>8</string>
<key>description</key><string>Object autoreleased too many times</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Object autoreleased too many times</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>4fc36e73ba317d307dc9cc4b3d62fd0a</string>
+ <key>issue_hash_content_of_line_in_context</key><string>8e06af66dd0b414c095c951ac1f2cc68</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>CFOverAutorelease</string>
<key>issue_hash_function_offset</key><string>4</string>
<key>description</key><string>Object autoreleased too many times</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Object autoreleased too many times</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>08e6a3931d34cda45c09dfda76976e17</string>
+ <key>issue_hash_content_of_line_in_context</key><string>06eeb988e43f885cb575eba46e7ccf8f</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>CFAutoreleaseUnowned</string>
<key>issue_hash_function_offset</key><string>3</string>
<key>description</key><string>Object autoreleased too many times</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Object autoreleased too many times</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>d9bb23a5435fe15df9d7ffdc27a8a072</string>
+ <key>issue_hash_content_of_line_in_context</key><string>e1b335bbbaad2a9c427e681a6fac6562</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>CFAutoreleaseUnownedMixed</string>
<key>issue_hash_function_offset</key><string>4</string>
</array>
<key>files</key>
<array>
- <string>/test/Analysis/retain-release-path-notes.m</string>
</array>
</dict>
</plist>
<plist version="1.0">
<dict>
<key>clang_version</key>
-<string>clang version 8.0.0 </string>
<key>diagnostics</key>
<array>
<dict>
<key>description</key><string>Reference-counted object is used after it is released</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Use-after-release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>5928b2a4699cbae0686391c20e639007</string>
+ <key>issue_hash_content_of_line_in_context</key><string>1089a297e77ff0c9d2d55cfb3aae26d3</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f1</string>
<key>issue_hash_function_offset</key><string>7</string>
<key>description</key><string>Reference-counted object is used after it is released</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Use-after-release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>6b2e175938153ac041f52ebbf50b1f43</string>
+ <key>issue_hash_content_of_line_in_context</key><string>bb12c99d56657635b20d4a0801590eed</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f2</string>
<key>issue_hash_function_offset</key><string>7</string>
<key>description</key><string>Potential leak of an object stored into 'date'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>3fdbd844ddb925306ba2bb1b3626f310</string>
+ <key>issue_hash_content_of_line_in_context</key><string>0e9bb151f425535a0ec1b0bf0574dd7d</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f5</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Potential leak of an object stored into 'date'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>8529da75e357c59fb0a7fefb0b6e0952</string>
+ <key>issue_hash_content_of_line_in_context</key><string>ad4b758c93bbe7feeee349a526293527</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f6</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'date'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>eb0faa12081b1e28b218e4c6e53d57ec</string>
+ <key>issue_hash_content_of_line_in_context</key><string>2a319c210c1c5b4274e3f28931ead03b</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f7</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'date'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak of returned object</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>404d4de8faa444bc52fd510380bd0a63</string>
+ <key>issue_hash_content_of_line_in_context</key><string>2c347e0a0af508867a6d854a3fc8f690</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f7</string>
<key>issue_hash_function_offset</key><string>3</string>
<key>description</key><string>Potential leak of an object stored into 'date'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>251dff6727b3d99ec95caa28672669ea</string>
+ <key>issue_hash_content_of_line_in_context</key><string>0be746eb38e868156f7f57ea95735f4e</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f8</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'disk'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>69ae08a90fe52a921ed423df38ed7480</string>
+ <key>issue_hash_content_of_line_in_context</key><string>3e83186b5b944ef7a3ec026d469d5ad7</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f10</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'dict'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>a7f8c63b1cdc39df79b7457e27ff4930</string>
+ <key>issue_hash_content_of_line_in_context</key><string>ffc6479dc21fc10cdb83b4392685ed36</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f10</string>
<key>issue_hash_function_offset</key><string>7</string>
<key>description</key><string>Potential leak of an object stored into 'disk'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>cace8e35bed93ecdfa0455ac166aaa97</string>
+ <key>issue_hash_content_of_line_in_context</key><string>1c06fc99a1d078653ae8e4fe308e09cd</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f10</string>
<key>issue_hash_function_offset</key><string>10</string>
<key>description</key><string>Potential leak of an object stored into 'disk'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>778f70549a15e78703b4dcb3a287df33</string>
+ <key>issue_hash_content_of_line_in_context</key><string>460f099c6ae21a4b3ae818c9f65df2b0</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f10</string>
<key>issue_hash_function_offset</key><string>4</string>
<key>description</key><string>Potential leak of an object stored into 'dissenter'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>6c188b4716e84cdc55b93d40e6c2daf3</string>
+ <key>issue_hash_content_of_line_in_context</key><string>65004e269b1b5cb5d9b5c6f7a02926e3</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f10</string>
<key>issue_hash_function_offset</key><string>13</string>
<key>description</key><string>Potential leak of an object stored into 'session'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>35b9ac7ff198890c88d5839a898b7fea</string>
+ <key>issue_hash_content_of_line_in_context</key><string>e9c1be038ef498b7985f5b1ddcb5444f</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f10</string>
<key>issue_hash_function_offset</key><string>17</string>
<key>description</key><string>Potential leak of an object stored into 'f'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>17d84d673b35235b52d8f8f00c1d1eea</string>
+ <key>issue_hash_content_of_line_in_context</key><string>9c7c3b2bf298c7d046fd6fc7f6fe688e</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>testLeakCoreMediaReferenceType</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Incorrect decrement of the reference count of an object that is not owned at this point by the caller</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Bad release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>1702285448a953b02ab74a8eb9a610d9</string>
+ <key>issue_hash_content_of_line_in_context</key><string>69932084739a429d667d8de6de42af0b</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>testOverReleaseMediaReferenceType</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Potential leak of an object stored into 'buffer'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>402566b4ddf1683dac1aefc1ab3e76e9</string>
+ <key>issue_hash_content_of_line_in_context</key><string>0f30258c45ed9ecd8646db90eaf20c4a</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>testCMBufferQueueDequeueAndRetain</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Incorrect decrement of the reference count of an object that is not owned at this point by the caller</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Bad release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>143ef5974bfece95e9894da5250aaff0</string>
+ <key>issue_hash_content_of_line_in_context</key><string>13e672795c0e57433c642c84f26f6c9b</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f11</string>
<key>issue_hash_function_offset</key><string>21</string>
<key>description</key><string>Potential leak of an object stored into 'o'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>af4ad99c5fb565d82e1b4848aaca4e24</string>
+ <key>issue_hash_content_of_line_in_context</key><string>eeff9e133573bdbc1aeb633284cbdb2b</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f12</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Object autoreleased too many times</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Object autoreleased too many times</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>58a0b3f8332f42561f89b11f6eb5e91f</string>
+ <key>issue_hash_content_of_line_in_context</key><string>620a4245edc8df18036da34702ca01c8</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f13_autorelease_b</string>
<key>issue_hash_function_offset</key><string>4</string>
<key>description</key><string>Object autoreleased too many times</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Object autoreleased too many times</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>612dc6574d54c8010703a9776d8a4a0a</string>
+ <key>issue_hash_content_of_line_in_context</key><string>1a87a5f904c165069a731b0325d45edf</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f13_autorelease_c</string>
<key>issue_hash_function_offset</key><string>4</string>
<key>description</key><string>Object autoreleased too many times</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Object autoreleased too many times</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>c57037289bc3acc586de325df25951ed</string>
+ <key>issue_hash_content_of_line_in_context</key><string>6ed645efdfe968f31d4356610bb6dd02</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f13_autorelease_d</string>
<key>issue_hash_function_offset</key><string>4</string>
<key>description</key><string>Potential leak of an object of type 'CFMutableArrayRef'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>6abb479bc4c7782a125d680fddf825ef</string>
+ <key>issue_hash_content_of_line_in_context</key><string>5295be41524e9e28f4b1a608006801fe</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f14_leakimmediately</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'bmap'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>2cfebefee7b63ce3954419e571be4f63</string>
+ <key>issue_hash_content_of_line_in_context</key><string>2e5affde083280f6d31ed412ac8c2396</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f18</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Object with a +0 retain count returned to caller where a +1 (owning) retain count is expected</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Method should return an owned object</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>dcd3becc58a149abe6ade5598138d3dd</string>
+ <key>issue_hash_content_of_line_in_context</key><string>fdd0cb02c08c718da2686b6e0f04aad7</string>
<key>issue_context_kind</key><string>Objective-C method</string>
<key>issue_context</key><string>newString</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Potential leak of an object stored into 'kind'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>6688c9cb12f0c76ec80eb03b1d2eddf8</string>
+ <key>issue_hash_content_of_line_in_context</key><string>03f39b74e1ccafa9c613ba4bb71de560</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar_6659160</string>
<key>issue_hash_function_offset</key><string>5</string>
<key>description</key><string>Incorrect decrement of the reference count of an object that is not owned at this point by the caller</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Bad release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>d04966e9b8e981d8f69bf03823253033</string>
+ <key>issue_hash_content_of_line_in_context</key><string>c8a4713a734a4f6e747423ef88af6bf8</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar_6659160</string>
<key>issue_hash_function_offset</key><string>33</string>
<key>description</key><string>Reference-counted object is used after it is released</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Use-after-release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>1b35183a6aca4df5a8732c8da94e3205</string>
+ <key>issue_hash_content_of_line_in_context</key><string>83c7891609f8efb616060d0c6ae6bb43</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>pr3820_ReleaseAfterDealloc</string>
<key>issue_hash_function_offset</key><string>3</string>
<key>description</key><string>Reference-counted object is used after it is released</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Use-after-release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>54f2bd1534fa675b58c4f8eef3120373</string>
+ <key>issue_hash_content_of_line_in_context</key><string>9fe338c720f25b3b1d5a68930d3ae4b8</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>pr3820_DeallocAfterRelease</string>
<key>issue_hash_function_offset</key><string>4</string>
<key>description</key><string>Potential leak of an object stored into 'dict'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>055e6f3413539276fedeac241fccd9b8</string>
+ <key>issue_hash_content_of_line_in_context</key><string>df3400f53fc437aede21f685ca1955d4</string>
<key>issue_context_kind</key><string>Objective-C method</string>
<key>issue_context</key><string>applicationDidFinishLaunching:</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'dict'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>444f6019b048a95dd71c6be49ecb73ff</string>
+ <key>issue_hash_content_of_line_in_context</key><string>5104ca579763af0f8c66da3fdc42b95f</string>
<key>issue_context_kind</key><string>Objective-C method</string>
<key>issue_context</key><string>radar10102244</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Incorrect decrement of the reference count of an object that is not owned at this point by the caller</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Bad release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>641de26edd3d85ca241de577afbcda86</string>
+ <key>issue_hash_content_of_line_in_context</key><string>a4a85a3991cb3888217d5c62346107dc</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar_6257780_Case1</string>
<key>issue_hash_function_offset</key><string>3</string>
<key>description</key><string>Potential leak of an object of type 'RDar6320065Subclass *'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>8e8ae80fd006f27a952f77494bd1c05f</string>
+ <key>issue_hash_content_of_line_in_context</key><string>75b7ad344b1d4665d918188bd10429df</string>
<key>issue_context_kind</key><string>Objective-C method</string>
<key>issue_context</key><string>_initReturningNewClassBad</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Object with a +0 retain count returned to caller where a +1 (owning) retain count is expected</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Method should return an owned object</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>625e26ef3ae9de238f30175e4e9f4937</string>
+ <key>issue_hash_content_of_line_in_context</key><string>791e285d27d610c4c016065dd5addd37</string>
<key>issue_context_kind</key><string>Objective-C method</string>
<key>issue_context</key><string>initReturningNewClassBad2</string>
<key>issue_hash_function_offset</key><string>3</string>
<key>description</key><string>Potential leak of an object of type 'NSString *'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak of returned object</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>666dce676597e2cfa3199521864f7b96</string>
+ <key>issue_hash_content_of_line_in_context</key><string>58cf9e4228ab9cbe375ddf37d04d45f1</string>
<key>issue_context_kind</key><string>Objective-C method</string>
<key>issue_context</key><string>NoCopyString</string>
<key>issue_hash_function_offset</key><string>0</string>
<key>description</key><string>Potential leak of an object of type 'NSString *'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak of returned object</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>31104cdb408dbc3faf693a5c31973486</string>
+ <key>issue_hash_content_of_line_in_context</key><string>e1b0176b31382e7e75129dd78883c91b</string>
<key>issue_context_kind</key><string>Objective-C method</string>
<key>issue_context</key><string>noCopyString</string>
<key>issue_hash_function_offset</key><string>0</string>
<key>description</key><string>Potential leak of an object of type 'NSString *'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>909638940b4d7020f51062089653b231</string>
+ <key>issue_hash_content_of_line_in_context</key><string>5ff4d17e82026ccd84121b0a361fc135</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_RDar6859457</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object of type 'NSString *'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>2a37743e32cfa0a86958fed215c30e87</string>
+ <key>issue_hash_content_of_line_in_context</key><string>964683651b544d6c1cce0c4ae6961936</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_RDar6859457</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Potential leak of an object of type 'NSString *'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak of returned object</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>20b25f0ba6268e055d8491c67c6a26bd</string>
+ <key>issue_hash_content_of_line_in_context</key><string>ca046c4c96c27a0e8c84dd707563bba9</string>
<key>issue_context_kind</key><string>Objective-C method</string>
<key>issue_context</key><string>:</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object of type 'id'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>706b9d732ece93a88487dbbf0b82fd23</string>
+ <key>issue_hash_content_of_line_in_context</key><string>12515c1f2d3343496d32a54ef376347d</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar6902710</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object of type 'id'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>631eebb0c921191c24734f98fe93f6bf</string>
+ <key>issue_hash_content_of_line_in_context</key><string>e10d7d441805b9f66c118bfeccf32f29</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar6902710</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Potential leak of an object of type 'CGImageRef'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>ee36a48521a32c183a086066d3c5ae1f</string>
+ <key>issue_hash_content_of_line_in_context</key><string>3ae54947ad02e14773ac126982de301d</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar6902710</string>
<key>issue_hash_function_offset</key><string>3</string>
<key>description</key><string>Potential leak of an object of type 'CGImageRef'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>70a2dd4ee6b6f7caad87a46dc6dd3580</string>
+ <key>issue_hash_content_of_line_in_context</key><string>6dba0d2672617f7eb2c512129fb17bb3</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar6902710</string>
<key>issue_hash_function_offset</key><string>4</string>
<key>description</key><string>Potential leak of an object of type 'CGLayerRef'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>a82448687d1cbf5cb517914dbe6de4fe</string>
+ <key>issue_hash_content_of_line_in_context</key><string>b065641c4257dac33ff15b08859d09e2</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar6945561</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object of type 'CFMutableDictionaryRef'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>540e0145994c1e14ea750fe91a497855</string>
+ <key>issue_hash_content_of_line_in_context</key><string>7cbb4f547b5c1fb1a456ecc47f27d853</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>IOBSDNameMatching_wrapper</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object of type 'CFMutableDictionaryRef'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>99d7012d797e181ef8e9a289ee9099eb</string>
+ <key>issue_hash_content_of_line_in_context</key><string>0b329ce97e1baf94f89590888a4af794</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>IOServiceMatching_wrapper</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object of type 'CFMutableDictionaryRef'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>5d956e58f05bcc1b67ff65e02cbba302</string>
+ <key>issue_hash_content_of_line_in_context</key><string>e207241fbe4666cffeeca3f47966425f</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>IOServiceNameMatching_wrapper</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Reference-counted object is used after it is released</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Use-after-release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>84a53bfb58a3a929535b47e28b997382</string>
+ <key>issue_hash_content_of_line_in_context</key><string>ae61d11111bc6c9f049a5ca8935b7bae</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>IOServiceAddNotification_wrapper</string>
<key>issue_hash_function_offset</key><string>4</string>
<key>description</key><string>Potential leak of an object of type 'CFMutableDictionaryRef'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>36337ff486f6a8b702e68d13393bc975</string>
+ <key>issue_hash_content_of_line_in_context</key><string>62fc802833a96d44d2fa008826c46c64</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>IORegistryEntryIDMatching_wrapper</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object of type 'CFMutableDictionaryRef'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>ee83ca968ddc2ecad7ae4318ce7d1d95</string>
+ <key>issue_hash_content_of_line_in_context</key><string>644a1e5f3d844a5d9b140de26e6e5645</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>IOOpenFirmwarePathMatching_wrapper</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Reference-counted object is used after it is released</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Use-after-release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>e8c08b2b3d53f5890907888e16927805</string>
+ <key>issue_hash_content_of_line_in_context</key><string>904a99d378144e5aa011649cec493695</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>IOServiceGetMatchingService_wrapper</string>
<key>issue_hash_function_offset</key><string>3</string>
<key>description</key><string>Reference-counted object is used after it is released</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Use-after-release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>31664b5acc7980da73f5545fb16b0910</string>
+ <key>issue_hash_content_of_line_in_context</key><string>23c94c459003beb49ea078f75a86ccc5</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>IOServiceGetMatchingServices_wrapper</string>
<key>issue_hash_function_offset</key><string>3</string>
<key>description</key><string>Reference-counted object is used after it is released</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Use-after-release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>6edae46016a9671e2d5400b100d5efb5</string>
+ <key>issue_hash_content_of_line_in_context</key><string>06e6fa1f7f96818fbd619dfe8b210b0d</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>IOServiceAddMatchingNotification_wrapper</string>
<key>issue_hash_function_offset</key><string>4</string>
<key>description</key><string>Potential leak of an object stored into 'number'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>dcec4e2bd254a3c24e84e598b5a827bf</string>
+ <key>issue_hash_content_of_line_in_context</key><string>1692047c1a2ab283584ae01c84e3ae35</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar_7152619</string>
<key>issue_hash_function_offset</key><string>4</string>
<key>description</key><string>Potential leak of an object of type 'CGColorSpaceRef'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>9317a6bf07dd10dc988f2415cc2c4ef7</string>
+ <key>issue_hash_content_of_line_in_context</key><string>17e5c3184216ca3aef86288dc1f41d8d</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar_7184450</string>
<key>issue_hash_function_offset</key><string>13</string>
<key>description</key><string>Potential leak of an object of type 'CGColorSpaceRef'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>ec3e6216b279aa48d8403c6aab30d996</string>
+ <key>issue_hash_content_of_line_in_context</key><string>c2225660bdec84d2ae183eda303a1abb</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar_7184450_pos</string>
<key>issue_hash_function_offset</key><string>13</string>
<key>description</key><string>Potential leak of an object stored into 'myGradient'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>4b3d6bb6b8dc5c51b7dfa8554b24eb66</string>
+ <key>issue_hash_content_of_line_in_context</key><string>6415d6b7dd7d48a2ef27f4c4d0168c64</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar_7184450_pos</string>
<key>issue_hash_function_offset</key><string>13</string>
<key>description</key><string>Potential leak of an object stored into 'number'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>42a83016e862ec323e24920873073a5a</string>
+ <key>issue_hash_content_of_line_in_context</key><string>08a69979bb4fa932512da1327fbf3b23</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar_7299394_positive</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object of type 'CGContextRef'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>a416473fed3a9dbc6bfee885bee38216</string>
+ <key>issue_hash_content_of_line_in_context</key><string>32b76a1b35c681cad8093c7e79e36388</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar_7358899</string>
<key>issue_hash_function_offset</key><string>7</string>
<key>description</key><string>Potential leak of an object stored into 'y'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>980dd45e9cf6581dbc2be9ebfc500b7f</string>
+ <key>issue_hash_content_of_line_in_context</key><string>7e6172f0b4b6af27712153519e1934e1</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar7265711_a</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'number'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>ebf51fb2b16499cf3a5c57d251a91061</string>
+ <key>issue_hash_content_of_line_in_context</key><string>5eb97f906bb3af4befe63c891484f791</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar7306898</string>
<key>issue_hash_function_offset</key><string>4</string>
<key>description</key><string>Potential leak of an object stored into 'str'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>1174ccc2a30887ebf80fe25fc6722b1a</string>
+ <key>issue_hash_content_of_line_in_context</key><string>6b9b51ce7b68ca0ba6a85e8924601a96</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_attr_1</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'str'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>ce9963dd1c85ac22cea4e4fef615354e</string>
+ <key>issue_hash_content_of_line_in_context</key><string>eb040d5ec198d092ec9894af4dce6af8</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_attr_1b</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'str2'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>0183088266857082f35eb17f1377fd69</string>
+ <key>issue_hash_content_of_line_in_context</key><string>21b45a41bb0c3c70a0efe89359ff3385</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_attr1c</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Potential leak of an object stored into 'str4'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>352a17ef8eddd3aa5f7f6e74a74a4df3</string>
+ <key>issue_hash_content_of_line_in_context</key><string>60396abae77bacd747ea9081b63a32db</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_attr1c</string>
<key>issue_hash_function_offset</key><string>4</string>
<key>description</key><string>Potential leak of an object stored into 'x'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>d0e564404585060990202acb33f0bb1e</string>
+ <key>issue_hash_content_of_line_in_context</key><string>e258a710e07550a3dc5f47361a7380e1</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>testattr2_a</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'x'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>567dfcbc22471ca4ba9f2fccd9ff14fb</string>
+ <key>issue_hash_content_of_line_in_context</key><string>dc245145c78c3421392a20775cdd6f23</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>testattr2_b</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'x'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>83cd2670977d513443836653fee8147b</string>
+ <key>issue_hash_content_of_line_in_context</key><string>77b970319b12b0c189e46ad65fa848c7</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>testattr2_b_11358224_self_assign_looses_the_leak</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object of type 'NSString *'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak of returned object</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>f83246e7e738918426df1adc915f4eca</string>
+ <key>issue_hash_content_of_line_in_context</key><string>4a8d774d2b821ce1601df7edabf66097</string>
<key>issue_context_kind</key><string>Objective-C method</string>
<key>issue_context</key><string>newString</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Object with a +0 retain count returned to caller where a +1 (owning) retain count is expected</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Method should return an owned object</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>5f233261d96f1d461af36fc3e0efc8eb</string>
+ <key>issue_hash_content_of_line_in_context</key><string>2a609b8807dab6d3cb1a1db524094f2f</string>
<key>issue_context_kind</key><string>Objective-C method</string>
<key>issue_context</key><string>newCFRetainedAsCFNoAttr</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object of type 'CFDateRef'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak of returned object</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>7ee55b74b5ee01c6ffa2a3d83c8cf88b</string>
+ <key>issue_hash_content_of_line_in_context</key><string>944f189da47b1406f9cca6f17ad9f77c</string>
<key>issue_context_kind</key><string>Objective-C method</string>
<key>issue_context</key><string>alsoReturnsRetained</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object of type 'CFDateRef'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak of returned object</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>177b2cf7eb3d8334393ee0861f5a38ac</string>
+ <key>issue_hash_content_of_line_in_context</key><string>30ebf65449c31336f8a97555d79f1943</string>
<key>issue_context_kind</key><string>Objective-C method</string>
<key>issue_context</key><string>alsoReturnsRetainedAsCF</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'value'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>85e9d8130a1f1ec37f0ba26746abd749</string>
+ <key>issue_hash_content_of_line_in_context</key><string>2ab1a2345ddfa1fd48777c7c179d4e33</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_panic_negative</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Potential leak of an object stored into 'value'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>4a0b16976e0517b38b2ccc16e2928c2e</string>
+ <key>issue_hash_content_of_line_in_context</key><string>f96bb4f5c1af6cf932d7ab58b678c235</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_panic_neg_2</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Potential leak of an object stored into 'number'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>af73d9c62952a300a7c393ebd5073f75</string>
+ <key>issue_hash_content_of_line_in_context</key><string>14182fb28ed03595f896c2f8536ac111</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_blocks_1_pos</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'number'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>771b2a332053388ffbdd9ba74ea84c5e</string>
+ <key>issue_hash_content_of_line_in_context</key><string>dbf800f836ff675d2f779f7417877c1b</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_blocks_1_indirect_retain_via_call</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'info'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>39f8c30f7436f678d5259c0fdd3a0dad</string>
+ <key>issue_hash_content_of_line_in_context</key><string>64424de797303506a3dfdb52fa765645</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar_8724287</string>
<key>issue_hash_function_offset</key><string>7</string>
<key>description</key><string>Potential leak of an object of type 'CFMutableArrayRef'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak of returned object</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>107e3efdeb8cdff4bef4c64183c4f6fa</string>
+ <key>issue_hash_content_of_line_in_context</key><string>7b7fc0c36e58713202141cb584150903</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>camelcase_createno</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object of type 'CFMutableArrayRef'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak of returned object</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>20c973a013858abb0a926276c956f858</string>
+ <key>issue_hash_content_of_line_in_context</key><string>32912dd9518de1b3f4cc8ba38368f7e6</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>camelcase_copying</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object of type 'CFMutableArrayRef'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak of returned object</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>80ee99e51561a37297429740e3a4da0c</string>
+ <key>issue_hash_content_of_line_in_context</key><string>1dccc42846a9ef9bf1a1830e277d5b78</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>camel_creat</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object of type 'CFMutableArrayRef'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak of returned object</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>a4e28a04f6a8d87c8aaf4d71c37cac0f</string>
+ <key>issue_hash_content_of_line_in_context</key><string>2a0ba33097f6e9362a79689e2ac0cf4a</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>camel_copymachine</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'vals'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>6b727a438d8411c058fd32867b9402bc</string>
+ <key>issue_hash_content_of_line_in_context</key><string>43f6c1be372d09a4a4cffaefa69d0148</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar6582778</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Reference-counted object is used after it is released</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Use-after-release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>b39dcf9df7cec8dd73cbbe25b2a7d6c5</string>
+ <key>issue_hash_content_of_line_in_context</key><string>ebe7e868c0075bfa7480e3359e4fbce8</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar10232019_positive</string>
<key>issue_hash_function_offset</key><string>6</string>
<key>description</key><string>Potential leak of an object stored into 'a'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>a501f743b22f1feb5dc317fcad4f7556</string>
+ <key>issue_hash_content_of_line_in_context</key><string>507c3679ae27249e01844b7555843688</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_objc_arrays</string>
<key>issue_hash_function_offset</key><string>3</string>
<key>description</key><string>Potential leak of an object stored into 'a2'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>a141a6ad33e8ff2ae3b13da0ad36ebc5</string>
+ <key>issue_hash_content_of_line_in_context</key><string>821f8268a0b7d3f90e4dd88fa1edf39b</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_objc_arrays</string>
<key>issue_hash_function_offset</key><string>12</string>
<key>description</key><string>Potential leak of an object stored into 'a3'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>2b072d75e8da8e3fe8f7968a85efb37c</string>
+ <key>issue_hash_content_of_line_in_context</key><string>37b00e6e0e6b792ea3294a9ffd6f4886</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_objc_arrays</string>
<key>issue_hash_function_offset</key><string>20</string>
<key>description</key><string>Potential leak of an object stored into 'a'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>0bfdfb7e392626e0fccc6ab9f58f1ca8</string>
+ <key>issue_hash_content_of_line_in_context</key><string>62fc5b80705a03ab1d8b50bdcfbfb179</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_objc_arrays</string>
<key>issue_hash_function_offset</key><string>28</string>
<key>description</key><string>Potential leak of an object stored into 'a'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>ff7c34e661a42d06a7fb3e9669e70339</string>
+ <key>issue_hash_content_of_line_in_context</key><string>3eee239ca30a84ef6ecc5d154ae8df28</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_objc_arrays</string>
<key>issue_hash_function_offset</key><string>37</string>
<key>description</key><string>Potential leak of an object stored into 'value'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>73e84c042932d2e17e00f00dc3d36d5a</string>
+ <key>issue_hash_content_of_line_in_context</key><string>cb86fdadd2217db6b784b37dc29eba34</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_objc_integer_literals</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'value'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>465e592d4f7a187717d00b8154a614b5</string>
+ <key>issue_hash_content_of_line_in_context</key><string>4ad9235c4885452c3034fef815598a63</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_objc_boxed_expressions</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'value'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>c701bd0c60f51d96c047aa78c9e0eb99</string>
+ <key>issue_hash_content_of_line_in_context</key><string>9d3a52ee2efe90fef76f91f143f0d9e7</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_objc_boxed_expressions</string>
<key>issue_hash_function_offset</key><string>4</string>
<key>description</key><string>Reference-counted object is used after it is released</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Use-after-release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>a4cedbb647e9632da7a5072cb839e54a</string>
+ <key>issue_hash_content_of_line_in_context</key><string>0aad7b0550b51ebc0a2323c482d8eefd</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar11400885</string>
<key>issue_hash_function_offset</key><string>9</string>
<key>description</key><string>Incorrect decrement of the reference count of an object that is not owned at this point by the caller</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Bad release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>fd9427d86a2357fd92478c9c7abbc1f4</string>
+ <key>issue_hash_content_of_line_in_context</key><string>3b63deb8c998b2d73dd63da9f89672bb</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>testConsumeAndStopTracking</string>
<key>issue_hash_function_offset</key><string>10</string>
<key>description</key><string>Incorrect decrement of the reference count of an object that is not owned at this point by the caller</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Bad release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>0e65e51476e5671dcd37f632806e5147</string>
+ <key>issue_hash_content_of_line_in_context</key><string>a4fe04db2f5fa1aa2b6d8d18ccb5dd02</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>testCFConsumeAndStopTracking</string>
<key>issue_hash_function_offset</key><string>10</string>
<key>description</key><string>Potential leak of an object stored into 'x'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>a0ba9c47505e923763ea5323ad2f71b7</string>
+ <key>issue_hash_content_of_line_in_context</key><string>55f656da79f1b87a4b5618167f68c233</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_custom_cf</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'obj'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>7a6cf8cb3c5e0ca3125d7e27695a810a</string>
+ <key>issue_hash_content_of_line_in_context</key><string>a7b4693fabae95c6b2091c7816fb2358</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>testCustomReturnsRetained</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Incorrect decrement of the reference count of an object that is not owned at this point by the caller</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Bad release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>810fce32373fe40ba8e2d0894d46f667</string>
+ <key>issue_hash_content_of_line_in_context</key><string>51de919c9df9dec2d383d050bf73d2d8</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>testCustomReturnsNotRetained</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object of type 'MyObj12706177 *'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>68ee7961ffb62c575cc2298cb4836090</string>
+ <key>issue_hash_content_of_line_in_context</key><string>d8890e44d330279fd91ce8fdb35d7c81</string>
<key>issue_context_kind</key><string>Objective-C method</string>
<key>issue_context</key><string>test12706177</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Object autoreleased too many times</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Object autoreleased too many times</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>1dc376fbbe90d14b6766585a0e2b7bee</string>
+ <key>issue_hash_content_of_line_in_context</key><string>d4c839aab11cc39188d1054f3270d67f</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>getIncorrectlyAutoreleasedCFType</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Object with a +0 retain count returned to caller where a +1 (owning) retain count is expected</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Method should return an owned object</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>6ae8ea9fe4bf203e6b7bfaf649a6ca6a</string>
+ <key>issue_hash_content_of_line_in_context</key><string>d2d9e8a977772482263591670a124c5d</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>createIncorrectlyAutoreleasedCFType</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Reference-counted object is used after it is released</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Use-after-release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>d4e28f96fc8610b5b4b849f4760956eb</string>
+ <key>issue_hash_content_of_line_in_context</key><string>c483bb676bdbea00f7e99b3617b4b6e2</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>useAfterRelease</string>
<key>issue_hash_function_offset</key><string>7</string>
<key>description</key><string>Potential leak of an object stored into 'obj'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>7986c4b7fb29301c109343dfe4155202</string>
+ <key>issue_hash_content_of_line_in_context</key><string>5bbb9b1720912f3fd2c67b3332de793b</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>testAutoreleaseReturnsInput</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Potential leak of an object stored into 'arr'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>2e0dbfdf379acf2f09e46db47d753e8a</string>
+ <key>issue_hash_content_of_line_in_context</key><string>ea7d6978bcb6da71c23b4bb6fef51a87</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>autoreleaseReturningTypedObject</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Object autoreleased too many times</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Object autoreleased too many times</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>41a2d6f91fdfa9b5f396102a60571e21</string>
+ <key>issue_hash_content_of_line_in_context</key><string>1f4f3ca2f399a94e54304b4a0dcb1e85</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>autoreleaseObjC</string>
<key>issue_hash_function_offset</key><string>6</string>
<key>description</key><string>Incorrect decrement of the reference count of an object that is not owned at this point by the caller</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Bad release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>95dd5581ae4195b71e9a11f34290af5d</string>
+ <key>issue_hash_content_of_line_in_context</key><string>ced44137127627330194b72c97aef162</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>testCFReturnsNotRetained</string>
<key>issue_hash_function_offset</key><string>4</string>
<key>description</key><string>Incorrect decrement of the reference count of an object that is not owned at this point by the caller</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Bad release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>014103674df4a8a65a96bcdf936637a2</string>
+ <key>issue_hash_content_of_line_in_context</key><string>e7615a640885cbd55bc856bfc07d7123</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>testCFReturnsNotRetainedAnnotated</string>
<key>issue_hash_function_offset</key><string>4</string>
</array>
<key>files</key>
<array>
- <string>/Volumes/Transcend/code/monorepo/llvm-project/clang/test/Analysis/retain-release.m</string>
</array>
</dict>
</plist>
<plist version="1.0">
<dict>
<key>clang_version</key>
-<string>clang version 8.0.0 </string>
<key>diagnostics</key>
<array>
<dict>
<key>description</key><string>Reference-counted object is used after it is released</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Use-after-release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>5928b2a4699cbae0686391c20e639007</string>
+ <key>issue_hash_content_of_line_in_context</key><string>1089a297e77ff0c9d2d55cfb3aae26d3</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f1</string>
<key>issue_hash_function_offset</key><string>7</string>
<key>description</key><string>Reference-counted object is used after it is released</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Use-after-release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>6b2e175938153ac041f52ebbf50b1f43</string>
+ <key>issue_hash_content_of_line_in_context</key><string>bb12c99d56657635b20d4a0801590eed</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f2</string>
<key>issue_hash_function_offset</key><string>7</string>
<key>description</key><string>Potential leak of an object stored into 'date'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>3fdbd844ddb925306ba2bb1b3626f310</string>
+ <key>issue_hash_content_of_line_in_context</key><string>0e9bb151f425535a0ec1b0bf0574dd7d</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f5</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Potential leak of an object stored into 'date'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>8529da75e357c59fb0a7fefb0b6e0952</string>
+ <key>issue_hash_content_of_line_in_context</key><string>ad4b758c93bbe7feeee349a526293527</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f6</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'date'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>eb0faa12081b1e28b218e4c6e53d57ec</string>
+ <key>issue_hash_content_of_line_in_context</key><string>2a319c210c1c5b4274e3f28931ead03b</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f7</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'date'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak of returned object</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>404d4de8faa444bc52fd510380bd0a63</string>
+ <key>issue_hash_content_of_line_in_context</key><string>2c347e0a0af508867a6d854a3fc8f690</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f7</string>
<key>issue_hash_function_offset</key><string>3</string>
<key>description</key><string>Potential leak of an object stored into 'date'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>251dff6727b3d99ec95caa28672669ea</string>
+ <key>issue_hash_content_of_line_in_context</key><string>0be746eb38e868156f7f57ea95735f4e</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f8</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'disk'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>69ae08a90fe52a921ed423df38ed7480</string>
+ <key>issue_hash_content_of_line_in_context</key><string>3e83186b5b944ef7a3ec026d469d5ad7</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f10</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'dict'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>a7f8c63b1cdc39df79b7457e27ff4930</string>
+ <key>issue_hash_content_of_line_in_context</key><string>ffc6479dc21fc10cdb83b4392685ed36</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f10</string>
<key>issue_hash_function_offset</key><string>7</string>
<key>description</key><string>Potential leak of an object stored into 'disk'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>cace8e35bed93ecdfa0455ac166aaa97</string>
+ <key>issue_hash_content_of_line_in_context</key><string>1c06fc99a1d078653ae8e4fe308e09cd</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f10</string>
<key>issue_hash_function_offset</key><string>10</string>
<key>description</key><string>Potential leak of an object stored into 'disk'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>778f70549a15e78703b4dcb3a287df33</string>
+ <key>issue_hash_content_of_line_in_context</key><string>460f099c6ae21a4b3ae818c9f65df2b0</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f10</string>
<key>issue_hash_function_offset</key><string>4</string>
<key>description</key><string>Potential leak of an object stored into 'dissenter'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>6c188b4716e84cdc55b93d40e6c2daf3</string>
+ <key>issue_hash_content_of_line_in_context</key><string>65004e269b1b5cb5d9b5c6f7a02926e3</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f10</string>
<key>issue_hash_function_offset</key><string>13</string>
<key>description</key><string>Potential leak of an object stored into 'session'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>35b9ac7ff198890c88d5839a898b7fea</string>
+ <key>issue_hash_content_of_line_in_context</key><string>e9c1be038ef498b7985f5b1ddcb5444f</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f10</string>
<key>issue_hash_function_offset</key><string>17</string>
<key>description</key><string>Potential leak of an object stored into 'f'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>17d84d673b35235b52d8f8f00c1d1eea</string>
+ <key>issue_hash_content_of_line_in_context</key><string>9c7c3b2bf298c7d046fd6fc7f6fe688e</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>testLeakCoreMediaReferenceType</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Incorrect decrement of the reference count of an object that is not owned at this point by the caller</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Bad release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>1702285448a953b02ab74a8eb9a610d9</string>
+ <key>issue_hash_content_of_line_in_context</key><string>69932084739a429d667d8de6de42af0b</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>testOverReleaseMediaReferenceType</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Potential leak of an object stored into 'buffer'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>402566b4ddf1683dac1aefc1ab3e76e9</string>
+ <key>issue_hash_content_of_line_in_context</key><string>0f30258c45ed9ecd8646db90eaf20c4a</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>testCMBufferQueueDequeueAndRetain</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Incorrect decrement of the reference count of an object that is not owned at this point by the caller</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Bad release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>143ef5974bfece95e9894da5250aaff0</string>
+ <key>issue_hash_content_of_line_in_context</key><string>13e672795c0e57433c642c84f26f6c9b</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f11</string>
<key>issue_hash_function_offset</key><string>21</string>
<key>description</key><string>Potential leak of an object stored into 'o'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>af4ad99c5fb565d82e1b4848aaca4e24</string>
+ <key>issue_hash_content_of_line_in_context</key><string>eeff9e133573bdbc1aeb633284cbdb2b</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f12</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Object autoreleased too many times</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Object autoreleased too many times</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>58a0b3f8332f42561f89b11f6eb5e91f</string>
+ <key>issue_hash_content_of_line_in_context</key><string>620a4245edc8df18036da34702ca01c8</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f13_autorelease_b</string>
<key>issue_hash_function_offset</key><string>4</string>
<key>description</key><string>Object autoreleased too many times</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Object autoreleased too many times</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>612dc6574d54c8010703a9776d8a4a0a</string>
+ <key>issue_hash_content_of_line_in_context</key><string>1a87a5f904c165069a731b0325d45edf</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f13_autorelease_c</string>
<key>issue_hash_function_offset</key><string>4</string>
<key>description</key><string>Object autoreleased too many times</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Object autoreleased too many times</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>c57037289bc3acc586de325df25951ed</string>
+ <key>issue_hash_content_of_line_in_context</key><string>6ed645efdfe968f31d4356610bb6dd02</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f13_autorelease_d</string>
<key>issue_hash_function_offset</key><string>4</string>
<key>description</key><string>Potential leak of an object of type 'CFMutableArrayRef'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>6abb479bc4c7782a125d680fddf825ef</string>
+ <key>issue_hash_content_of_line_in_context</key><string>5295be41524e9e28f4b1a608006801fe</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f14_leakimmediately</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'bmap'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>2cfebefee7b63ce3954419e571be4f63</string>
+ <key>issue_hash_content_of_line_in_context</key><string>2e5affde083280f6d31ed412ac8c2396</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>f18</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Object with a +0 retain count returned to caller where a +1 (owning) retain count is expected</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Method should return an owned object</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>dcd3becc58a149abe6ade5598138d3dd</string>
+ <key>issue_hash_content_of_line_in_context</key><string>fdd0cb02c08c718da2686b6e0f04aad7</string>
<key>issue_context_kind</key><string>Objective-C method</string>
<key>issue_context</key><string>newString</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Potential leak of an object stored into 'kind'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>6688c9cb12f0c76ec80eb03b1d2eddf8</string>
+ <key>issue_hash_content_of_line_in_context</key><string>03f39b74e1ccafa9c613ba4bb71de560</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar_6659160</string>
<key>issue_hash_function_offset</key><string>5</string>
<key>description</key><string>Incorrect decrement of the reference count of an object that is not owned at this point by the caller</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Bad release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>d04966e9b8e981d8f69bf03823253033</string>
+ <key>issue_hash_content_of_line_in_context</key><string>c8a4713a734a4f6e747423ef88af6bf8</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar_6659160</string>
<key>issue_hash_function_offset</key><string>33</string>
<key>description</key><string>Reference-counted object is used after it is released</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Use-after-release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>1b35183a6aca4df5a8732c8da94e3205</string>
+ <key>issue_hash_content_of_line_in_context</key><string>83c7891609f8efb616060d0c6ae6bb43</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>pr3820_ReleaseAfterDealloc</string>
<key>issue_hash_function_offset</key><string>3</string>
<key>description</key><string>Reference-counted object is used after it is released</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Use-after-release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>54f2bd1534fa675b58c4f8eef3120373</string>
+ <key>issue_hash_content_of_line_in_context</key><string>9fe338c720f25b3b1d5a68930d3ae4b8</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>pr3820_DeallocAfterRelease</string>
<key>issue_hash_function_offset</key><string>4</string>
<key>description</key><string>Potential leak of an object stored into 'dict'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>055e6f3413539276fedeac241fccd9b8</string>
+ <key>issue_hash_content_of_line_in_context</key><string>df3400f53fc437aede21f685ca1955d4</string>
<key>issue_context_kind</key><string>Objective-C method</string>
<key>issue_context</key><string>applicationDidFinishLaunching:</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'dict'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>444f6019b048a95dd71c6be49ecb73ff</string>
+ <key>issue_hash_content_of_line_in_context</key><string>5104ca579763af0f8c66da3fdc42b95f</string>
<key>issue_context_kind</key><string>Objective-C method</string>
<key>issue_context</key><string>radar10102244</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Incorrect decrement of the reference count of an object that is not owned at this point by the caller</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Bad release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>641de26edd3d85ca241de577afbcda86</string>
+ <key>issue_hash_content_of_line_in_context</key><string>a4a85a3991cb3888217d5c62346107dc</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar_6257780_Case1</string>
<key>issue_hash_function_offset</key><string>3</string>
<key>description</key><string>Potential leak of an object of type 'RDar6320065Subclass *'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>8e8ae80fd006f27a952f77494bd1c05f</string>
+ <key>issue_hash_content_of_line_in_context</key><string>75b7ad344b1d4665d918188bd10429df</string>
<key>issue_context_kind</key><string>Objective-C method</string>
<key>issue_context</key><string>_initReturningNewClassBad</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Object with a +0 retain count returned to caller where a +1 (owning) retain count is expected</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Method should return an owned object</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>625e26ef3ae9de238f30175e4e9f4937</string>
+ <key>issue_hash_content_of_line_in_context</key><string>791e285d27d610c4c016065dd5addd37</string>
<key>issue_context_kind</key><string>Objective-C method</string>
<key>issue_context</key><string>initReturningNewClassBad2</string>
<key>issue_hash_function_offset</key><string>3</string>
<key>description</key><string>Potential leak of an object of type 'NSString *'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak of returned object</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>666dce676597e2cfa3199521864f7b96</string>
+ <key>issue_hash_content_of_line_in_context</key><string>58cf9e4228ab9cbe375ddf37d04d45f1</string>
<key>issue_context_kind</key><string>Objective-C method</string>
<key>issue_context</key><string>NoCopyString</string>
<key>issue_hash_function_offset</key><string>0</string>
<key>description</key><string>Potential leak of an object of type 'NSString *'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak of returned object</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>31104cdb408dbc3faf693a5c31973486</string>
+ <key>issue_hash_content_of_line_in_context</key><string>e1b0176b31382e7e75129dd78883c91b</string>
<key>issue_context_kind</key><string>Objective-C method</string>
<key>issue_context</key><string>noCopyString</string>
<key>issue_hash_function_offset</key><string>0</string>
<key>description</key><string>Potential leak of an object of type 'NSString *'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>909638940b4d7020f51062089653b231</string>
+ <key>issue_hash_content_of_line_in_context</key><string>5ff4d17e82026ccd84121b0a361fc135</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_RDar6859457</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object of type 'NSString *'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>2a37743e32cfa0a86958fed215c30e87</string>
+ <key>issue_hash_content_of_line_in_context</key><string>964683651b544d6c1cce0c4ae6961936</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_RDar6859457</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Potential leak of an object of type 'NSString *'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak of returned object</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>20b25f0ba6268e055d8491c67c6a26bd</string>
+ <key>issue_hash_content_of_line_in_context</key><string>ca046c4c96c27a0e8c84dd707563bba9</string>
<key>issue_context_kind</key><string>Objective-C method</string>
<key>issue_context</key><string>:</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object of type 'id'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>706b9d732ece93a88487dbbf0b82fd23</string>
+ <key>issue_hash_content_of_line_in_context</key><string>12515c1f2d3343496d32a54ef376347d</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar6902710</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object of type 'id'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>631eebb0c921191c24734f98fe93f6bf</string>
+ <key>issue_hash_content_of_line_in_context</key><string>e10d7d441805b9f66c118bfeccf32f29</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar6902710</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Potential leak of an object of type 'CGImageRef'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>ee36a48521a32c183a086066d3c5ae1f</string>
+ <key>issue_hash_content_of_line_in_context</key><string>3ae54947ad02e14773ac126982de301d</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar6902710</string>
<key>issue_hash_function_offset</key><string>3</string>
<key>description</key><string>Potential leak of an object of type 'CGImageRef'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>70a2dd4ee6b6f7caad87a46dc6dd3580</string>
+ <key>issue_hash_content_of_line_in_context</key><string>6dba0d2672617f7eb2c512129fb17bb3</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar6902710</string>
<key>issue_hash_function_offset</key><string>4</string>
<key>description</key><string>Potential leak of an object of type 'CGLayerRef'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>a82448687d1cbf5cb517914dbe6de4fe</string>
+ <key>issue_hash_content_of_line_in_context</key><string>b065641c4257dac33ff15b08859d09e2</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar6945561</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object of type 'CFMutableDictionaryRef'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>540e0145994c1e14ea750fe91a497855</string>
+ <key>issue_hash_content_of_line_in_context</key><string>7cbb4f547b5c1fb1a456ecc47f27d853</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>IOBSDNameMatching_wrapper</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object of type 'CFMutableDictionaryRef'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>99d7012d797e181ef8e9a289ee9099eb</string>
+ <key>issue_hash_content_of_line_in_context</key><string>0b329ce97e1baf94f89590888a4af794</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>IOServiceMatching_wrapper</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object of type 'CFMutableDictionaryRef'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>5d956e58f05bcc1b67ff65e02cbba302</string>
+ <key>issue_hash_content_of_line_in_context</key><string>e207241fbe4666cffeeca3f47966425f</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>IOServiceNameMatching_wrapper</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Reference-counted object is used after it is released</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Use-after-release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>84a53bfb58a3a929535b47e28b997382</string>
+ <key>issue_hash_content_of_line_in_context</key><string>ae61d11111bc6c9f049a5ca8935b7bae</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>IOServiceAddNotification_wrapper</string>
<key>issue_hash_function_offset</key><string>4</string>
<key>description</key><string>Potential leak of an object of type 'CFMutableDictionaryRef'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>36337ff486f6a8b702e68d13393bc975</string>
+ <key>issue_hash_content_of_line_in_context</key><string>62fc802833a96d44d2fa008826c46c64</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>IORegistryEntryIDMatching_wrapper</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object of type 'CFMutableDictionaryRef'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>ee83ca968ddc2ecad7ae4318ce7d1d95</string>
+ <key>issue_hash_content_of_line_in_context</key><string>644a1e5f3d844a5d9b140de26e6e5645</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>IOOpenFirmwarePathMatching_wrapper</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Reference-counted object is used after it is released</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Use-after-release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>e8c08b2b3d53f5890907888e16927805</string>
+ <key>issue_hash_content_of_line_in_context</key><string>904a99d378144e5aa011649cec493695</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>IOServiceGetMatchingService_wrapper</string>
<key>issue_hash_function_offset</key><string>3</string>
<key>description</key><string>Reference-counted object is used after it is released</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Use-after-release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>31664b5acc7980da73f5545fb16b0910</string>
+ <key>issue_hash_content_of_line_in_context</key><string>23c94c459003beb49ea078f75a86ccc5</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>IOServiceGetMatchingServices_wrapper</string>
<key>issue_hash_function_offset</key><string>3</string>
<key>description</key><string>Reference-counted object is used after it is released</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Use-after-release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>6edae46016a9671e2d5400b100d5efb5</string>
+ <key>issue_hash_content_of_line_in_context</key><string>06e6fa1f7f96818fbd619dfe8b210b0d</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>IOServiceAddMatchingNotification_wrapper</string>
<key>issue_hash_function_offset</key><string>4</string>
<key>description</key><string>Potential leak of an object stored into 'number'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>dcec4e2bd254a3c24e84e598b5a827bf</string>
+ <key>issue_hash_content_of_line_in_context</key><string>1692047c1a2ab283584ae01c84e3ae35</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar_7152619</string>
<key>issue_hash_function_offset</key><string>4</string>
<key>description</key><string>Potential leak of an object of type 'CGColorSpaceRef'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>9317a6bf07dd10dc988f2415cc2c4ef7</string>
+ <key>issue_hash_content_of_line_in_context</key><string>17e5c3184216ca3aef86288dc1f41d8d</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar_7184450</string>
<key>issue_hash_function_offset</key><string>13</string>
<key>description</key><string>Potential leak of an object of type 'CGColorSpaceRef'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>ec3e6216b279aa48d8403c6aab30d996</string>
+ <key>issue_hash_content_of_line_in_context</key><string>c2225660bdec84d2ae183eda303a1abb</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar_7184450_pos</string>
<key>issue_hash_function_offset</key><string>13</string>
<key>description</key><string>Potential leak of an object stored into 'myGradient'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>4b3d6bb6b8dc5c51b7dfa8554b24eb66</string>
+ <key>issue_hash_content_of_line_in_context</key><string>6415d6b7dd7d48a2ef27f4c4d0168c64</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar_7184450_pos</string>
<key>issue_hash_function_offset</key><string>13</string>
<key>description</key><string>Potential leak of an object stored into 'number'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>42a83016e862ec323e24920873073a5a</string>
+ <key>issue_hash_content_of_line_in_context</key><string>08a69979bb4fa932512da1327fbf3b23</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar_7299394_positive</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object of type 'CGContextRef'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>a416473fed3a9dbc6bfee885bee38216</string>
+ <key>issue_hash_content_of_line_in_context</key><string>32b76a1b35c681cad8093c7e79e36388</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar_7358899</string>
<key>issue_hash_function_offset</key><string>7</string>
<key>description</key><string>Potential leak of an object stored into 'y'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>980dd45e9cf6581dbc2be9ebfc500b7f</string>
+ <key>issue_hash_content_of_line_in_context</key><string>7e6172f0b4b6af27712153519e1934e1</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar7265711_a</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'number'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>ebf51fb2b16499cf3a5c57d251a91061</string>
+ <key>issue_hash_content_of_line_in_context</key><string>5eb97f906bb3af4befe63c891484f791</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar7306898</string>
<key>issue_hash_function_offset</key><string>4</string>
<key>description</key><string>Potential leak of an object stored into 'str'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>1174ccc2a30887ebf80fe25fc6722b1a</string>
+ <key>issue_hash_content_of_line_in_context</key><string>6b9b51ce7b68ca0ba6a85e8924601a96</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_attr_1</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'str'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>ce9963dd1c85ac22cea4e4fef615354e</string>
+ <key>issue_hash_content_of_line_in_context</key><string>eb040d5ec198d092ec9894af4dce6af8</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_attr_1b</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'str2'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>0183088266857082f35eb17f1377fd69</string>
+ <key>issue_hash_content_of_line_in_context</key><string>21b45a41bb0c3c70a0efe89359ff3385</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_attr1c</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Potential leak of an object stored into 'str4'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>352a17ef8eddd3aa5f7f6e74a74a4df3</string>
+ <key>issue_hash_content_of_line_in_context</key><string>60396abae77bacd747ea9081b63a32db</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_attr1c</string>
<key>issue_hash_function_offset</key><string>4</string>
<key>description</key><string>Potential leak of an object stored into 'x'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>d0e564404585060990202acb33f0bb1e</string>
+ <key>issue_hash_content_of_line_in_context</key><string>e258a710e07550a3dc5f47361a7380e1</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>testattr2_a</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'x'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>567dfcbc22471ca4ba9f2fccd9ff14fb</string>
+ <key>issue_hash_content_of_line_in_context</key><string>dc245145c78c3421392a20775cdd6f23</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>testattr2_b</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'x'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>83cd2670977d513443836653fee8147b</string>
+ <key>issue_hash_content_of_line_in_context</key><string>77b970319b12b0c189e46ad65fa848c7</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>testattr2_b_11358224_self_assign_looses_the_leak</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object of type 'NSString *'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak of returned object</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>f83246e7e738918426df1adc915f4eca</string>
+ <key>issue_hash_content_of_line_in_context</key><string>4a8d774d2b821ce1601df7edabf66097</string>
<key>issue_context_kind</key><string>Objective-C method</string>
<key>issue_context</key><string>newString</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Object with a +0 retain count returned to caller where a +1 (owning) retain count is expected</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Method should return an owned object</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>5f233261d96f1d461af36fc3e0efc8eb</string>
+ <key>issue_hash_content_of_line_in_context</key><string>2a609b8807dab6d3cb1a1db524094f2f</string>
<key>issue_context_kind</key><string>Objective-C method</string>
<key>issue_context</key><string>newCFRetainedAsCFNoAttr</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object of type 'CFDateRef'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak of returned object</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>7ee55b74b5ee01c6ffa2a3d83c8cf88b</string>
+ <key>issue_hash_content_of_line_in_context</key><string>944f189da47b1406f9cca6f17ad9f77c</string>
<key>issue_context_kind</key><string>Objective-C method</string>
<key>issue_context</key><string>alsoReturnsRetained</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object of type 'CFDateRef'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak of returned object</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>177b2cf7eb3d8334393ee0861f5a38ac</string>
+ <key>issue_hash_content_of_line_in_context</key><string>30ebf65449c31336f8a97555d79f1943</string>
<key>issue_context_kind</key><string>Objective-C method</string>
<key>issue_context</key><string>alsoReturnsRetainedAsCF</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'value'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>85e9d8130a1f1ec37f0ba26746abd749</string>
+ <key>issue_hash_content_of_line_in_context</key><string>2ab1a2345ddfa1fd48777c7c179d4e33</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_panic_negative</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Potential leak of an object stored into 'value'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>4a0b16976e0517b38b2ccc16e2928c2e</string>
+ <key>issue_hash_content_of_line_in_context</key><string>f96bb4f5c1af6cf932d7ab58b678c235</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_panic_neg_2</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Potential leak of an object stored into 'number'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>af73d9c62952a300a7c393ebd5073f75</string>
+ <key>issue_hash_content_of_line_in_context</key><string>14182fb28ed03595f896c2f8536ac111</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_blocks_1_pos</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'number'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>771b2a332053388ffbdd9ba74ea84c5e</string>
+ <key>issue_hash_content_of_line_in_context</key><string>dbf800f836ff675d2f779f7417877c1b</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_blocks_1_indirect_retain_via_call</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'info'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>39f8c30f7436f678d5259c0fdd3a0dad</string>
+ <key>issue_hash_content_of_line_in_context</key><string>64424de797303506a3dfdb52fa765645</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar_8724287</string>
<key>issue_hash_function_offset</key><string>7</string>
<key>description</key><string>Potential leak of an object of type 'CFMutableArrayRef'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak of returned object</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>107e3efdeb8cdff4bef4c64183c4f6fa</string>
+ <key>issue_hash_content_of_line_in_context</key><string>7b7fc0c36e58713202141cb584150903</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>camelcase_createno</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object of type 'CFMutableArrayRef'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak of returned object</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>20c973a013858abb0a926276c956f858</string>
+ <key>issue_hash_content_of_line_in_context</key><string>32912dd9518de1b3f4cc8ba38368f7e6</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>camelcase_copying</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object of type 'CFMutableArrayRef'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak of returned object</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>80ee99e51561a37297429740e3a4da0c</string>
+ <key>issue_hash_content_of_line_in_context</key><string>1dccc42846a9ef9bf1a1830e277d5b78</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>camel_creat</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object of type 'CFMutableArrayRef'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak of returned object</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>a4e28a04f6a8d87c8aaf4d71c37cac0f</string>
+ <key>issue_hash_content_of_line_in_context</key><string>2a0ba33097f6e9362a79689e2ac0cf4a</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>camel_copymachine</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'vals'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>6b727a438d8411c058fd32867b9402bc</string>
+ <key>issue_hash_content_of_line_in_context</key><string>43f6c1be372d09a4a4cffaefa69d0148</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar6582778</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Reference-counted object is used after it is released</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Use-after-release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>b39dcf9df7cec8dd73cbbe25b2a7d6c5</string>
+ <key>issue_hash_content_of_line_in_context</key><string>ebe7e868c0075bfa7480e3359e4fbce8</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar10232019_positive</string>
<key>issue_hash_function_offset</key><string>6</string>
<key>description</key><string>Potential leak of an object stored into 'a'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>a501f743b22f1feb5dc317fcad4f7556</string>
+ <key>issue_hash_content_of_line_in_context</key><string>507c3679ae27249e01844b7555843688</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_objc_arrays</string>
<key>issue_hash_function_offset</key><string>3</string>
<key>description</key><string>Potential leak of an object stored into 'a2'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>a141a6ad33e8ff2ae3b13da0ad36ebc5</string>
+ <key>issue_hash_content_of_line_in_context</key><string>821f8268a0b7d3f90e4dd88fa1edf39b</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_objc_arrays</string>
<key>issue_hash_function_offset</key><string>12</string>
<key>description</key><string>Potential leak of an object stored into 'a3'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>2b072d75e8da8e3fe8f7968a85efb37c</string>
+ <key>issue_hash_content_of_line_in_context</key><string>37b00e6e0e6b792ea3294a9ffd6f4886</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_objc_arrays</string>
<key>issue_hash_function_offset</key><string>20</string>
<key>description</key><string>Potential leak of an object stored into 'a'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>0bfdfb7e392626e0fccc6ab9f58f1ca8</string>
+ <key>issue_hash_content_of_line_in_context</key><string>62fc5b80705a03ab1d8b50bdcfbfb179</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_objc_arrays</string>
<key>issue_hash_function_offset</key><string>28</string>
<key>description</key><string>Potential leak of an object stored into 'a'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>ff7c34e661a42d06a7fb3e9669e70339</string>
+ <key>issue_hash_content_of_line_in_context</key><string>3eee239ca30a84ef6ecc5d154ae8df28</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_objc_arrays</string>
<key>issue_hash_function_offset</key><string>37</string>
<key>description</key><string>Potential leak of an object stored into 'value'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>73e84c042932d2e17e00f00dc3d36d5a</string>
+ <key>issue_hash_content_of_line_in_context</key><string>cb86fdadd2217db6b784b37dc29eba34</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_objc_integer_literals</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'value'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>465e592d4f7a187717d00b8154a614b5</string>
+ <key>issue_hash_content_of_line_in_context</key><string>4ad9235c4885452c3034fef815598a63</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_objc_boxed_expressions</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'value'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>c701bd0c60f51d96c047aa78c9e0eb99</string>
+ <key>issue_hash_content_of_line_in_context</key><string>9d3a52ee2efe90fef76f91f143f0d9e7</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_objc_boxed_expressions</string>
<key>issue_hash_function_offset</key><string>4</string>
<key>description</key><string>Reference-counted object is used after it is released</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Use-after-release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>a4cedbb647e9632da7a5072cb839e54a</string>
+ <key>issue_hash_content_of_line_in_context</key><string>0aad7b0550b51ebc0a2323c482d8eefd</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>rdar11400885</string>
<key>issue_hash_function_offset</key><string>9</string>
<key>description</key><string>Incorrect decrement of the reference count of an object that is not owned at this point by the caller</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Bad release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>fd9427d86a2357fd92478c9c7abbc1f4</string>
+ <key>issue_hash_content_of_line_in_context</key><string>3b63deb8c998b2d73dd63da9f89672bb</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>testConsumeAndStopTracking</string>
<key>issue_hash_function_offset</key><string>10</string>
<key>description</key><string>Incorrect decrement of the reference count of an object that is not owned at this point by the caller</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Bad release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>0e65e51476e5671dcd37f632806e5147</string>
+ <key>issue_hash_content_of_line_in_context</key><string>a4fe04db2f5fa1aa2b6d8d18ccb5dd02</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>testCFConsumeAndStopTracking</string>
<key>issue_hash_function_offset</key><string>10</string>
<key>description</key><string>Potential leak of an object stored into 'x'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>a0ba9c47505e923763ea5323ad2f71b7</string>
+ <key>issue_hash_content_of_line_in_context</key><string>55f656da79f1b87a4b5618167f68c233</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>test_custom_cf</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object stored into 'obj'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>7a6cf8cb3c5e0ca3125d7e27695a810a</string>
+ <key>issue_hash_content_of_line_in_context</key><string>a7b4693fabae95c6b2091c7816fb2358</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>testCustomReturnsRetained</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Incorrect decrement of the reference count of an object that is not owned at this point by the caller</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Bad release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>810fce32373fe40ba8e2d0894d46f667</string>
+ <key>issue_hash_content_of_line_in_context</key><string>51de919c9df9dec2d383d050bf73d2d8</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>testCustomReturnsNotRetained</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Potential leak of an object of type 'MyObj12706177 *'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>68ee7961ffb62c575cc2298cb4836090</string>
+ <key>issue_hash_content_of_line_in_context</key><string>d8890e44d330279fd91ce8fdb35d7c81</string>
<key>issue_context_kind</key><string>Objective-C method</string>
<key>issue_context</key><string>test12706177</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Object autoreleased too many times</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Object autoreleased too many times</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>1dc376fbbe90d14b6766585a0e2b7bee</string>
+ <key>issue_hash_content_of_line_in_context</key><string>d4c839aab11cc39188d1054f3270d67f</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>getIncorrectlyAutoreleasedCFType</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Object with a +0 retain count returned to caller where a +1 (owning) retain count is expected</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Method should return an owned object</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>6ae8ea9fe4bf203e6b7bfaf649a6ca6a</string>
+ <key>issue_hash_content_of_line_in_context</key><string>d2d9e8a977772482263591670a124c5d</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>createIncorrectlyAutoreleasedCFType</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Reference-counted object is used after it is released</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Use-after-release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>d4e28f96fc8610b5b4b849f4760956eb</string>
+ <key>issue_hash_content_of_line_in_context</key><string>c483bb676bdbea00f7e99b3617b4b6e2</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>useAfterRelease</string>
<key>issue_hash_function_offset</key><string>7</string>
<key>description</key><string>Potential leak of an object stored into 'obj'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>7986c4b7fb29301c109343dfe4155202</string>
+ <key>issue_hash_content_of_line_in_context</key><string>5bbb9b1720912f3fd2c67b3332de793b</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>testAutoreleaseReturnsInput</string>
<key>issue_hash_function_offset</key><string>2</string>
<key>description</key><string>Potential leak of an object stored into 'arr'</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Leak</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>2e0dbfdf379acf2f09e46db47d753e8a</string>
+ <key>issue_hash_content_of_line_in_context</key><string>ea7d6978bcb6da71c23b4bb6fef51a87</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>autoreleaseReturningTypedObject</string>
<key>issue_hash_function_offset</key><string>1</string>
<key>description</key><string>Object autoreleased too many times</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Object autoreleased too many times</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>41a2d6f91fdfa9b5f396102a60571e21</string>
+ <key>issue_hash_content_of_line_in_context</key><string>1f4f3ca2f399a94e54304b4a0dcb1e85</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>autoreleaseObjC</string>
<key>issue_hash_function_offset</key><string>6</string>
<key>description</key><string>Incorrect decrement of the reference count of an object that is not owned at this point by the caller</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Bad release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>95dd5581ae4195b71e9a11f34290af5d</string>
+ <key>issue_hash_content_of_line_in_context</key><string>ced44137127627330194b72c97aef162</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>testCFReturnsNotRetained</string>
<key>issue_hash_function_offset</key><string>4</string>
<key>description</key><string>Incorrect decrement of the reference count of an object that is not owned at this point by the caller</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Bad release</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>014103674df4a8a65a96bcdf936637a2</string>
+ <key>issue_hash_content_of_line_in_context</key><string>e7615a640885cbd55bc856bfc07d7123</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>testCFReturnsNotRetainedAnnotated</string>
<key>issue_hash_function_offset</key><string>4</string>
</array>
<key>files</key>
<array>
- <string>/Volumes/Transcend/code/monorepo/llvm-project/clang/test/Analysis/retain-release.m</string>
</array>
</dict>
</plist>
-// RUN: %clang_analyze_cc1 -analyzer-checker=core,cplusplus.NewDelete,unix.MismatchedDeallocator -std=c++11 -verify %s
-// RUN: %clang_analyze_cc1 -analyzer-checker=core,cplusplus.NewDelete,cplusplus.NewDeleteLeaks,unix.MismatchedDeallocator -DLEAKS -std=c++11 -verify %s
+// RUN: %clang_analyze_cc1 -std=c++11 -verify %s \
+// RUN: -analyzer-checker=core \
+// RUN: -analyzer-checker=cplusplus.NewDelete \
+// RUN: -analyzer-checker=unix.MismatchedDeallocator
+//
+// RUN: %clang_analyze_cc1 -std=c++11 -verify %s \
+// RUN: -analyzer-checker=core \
+// RUN: -analyzer-checker=cplusplus.NewDelete \
+// RUN: -analyzer-checker=cplusplus.NewDeleteLeaks \
+// RUN: -analyzer-checker=unix.MismatchedDeallocator
+
// expected-no-diagnostics
typedef __typeof(sizeof(int)) size_t;
-// RUN: %clang_analyze_cc1 -analyzer-checker=core,cplusplus.NewDelete -std=c++11 -fblocks -verify %s
-// RUN: %clang_analyze_cc1 -analyzer-checker=core,cplusplus.NewDeleteLeaks -DLEAKS -std=c++11 -fblocks -verify %s
-// RUN: %clang_analyze_cc1 -analyzer-checker=core,cplusplus.NewDelete -std=c++11 -fblocks -analyzer-config c++-allocator-inlining=true -verify %s
-// RUN: %clang_analyze_cc1 -analyzer-checker=core,cplusplus.NewDeleteLeaks -DLEAKS -std=c++11 -fblocks -analyzer-config c++-allocator-inlining=true -verify %s
-// RUN: %clang_analyze_cc1 -analyzer-checker=core,cplusplus.NewDelete -std=c++11 -fblocks -DTEST_INLINABLE_ALLOCATORS -verify %s
-// RUN: %clang_analyze_cc1 -analyzer-checker=core,cplusplus.NewDeleteLeaks -DLEAKS -std=c++11 -fblocks -DTEST_INLINABLE_ALLOCATORS -verify %s
-// RUN: %clang_analyze_cc1 -analyzer-checker=core,cplusplus.NewDelete -std=c++11 -fblocks -analyzer-config c++-allocator-inlining=true -DTEST_INLINABLE_ALLOCATORS -verify %s
-// RUN: %clang_analyze_cc1 -analyzer-checker=core,cplusplus.NewDeleteLeaks -DLEAKS -std=c++11 -fblocks -analyzer-config c++-allocator-inlining=true -DTEST_INLINABLE_ALLOCATORS -verify %s
+// RUN: %clang_analyze_cc1 -std=c++11 -fblocks -verify %s \
+// RUN: -analyzer-checker=core \
+// RUN: -analyzer-checker=cplusplus.NewDelete
+//
+// RUN: %clang_analyze_cc1 -DLEAKS -std=c++11 -fblocks -verify %s \
+// RUN: -analyzer-checker=core \
+// RUN: -analyzer-checker=cplusplus.NewDeleteLeaks
+//
+// RUN: %clang_analyze_cc1 -std=c++11 -fblocks -verify %s \
+// RUN: -analyzer-checker=core \
+// RUN: -analyzer-checker=cplusplus.NewDelete \
+// RUN: -analyzer-config c++-allocator-inlining=true
+//
+// RUN: %clang_analyze_cc1 -DLEAKS -std=c++11 -fblocks -verify %s \
+// RUN: -analyzer-checker=core \
+// RUN: -analyzer-checker=cplusplus.NewDeleteLeaks \
+// RUN: -analyzer-config c++-allocator-inlining=true
+//
+// RUN: %clang_analyze_cc1 -DTEST_INLINABLE_ALLOCATORS \
+// RUN: -std=c++11 -fblocks -verify %s \
+// RUN: -analyzer-checker=core \
+// RUN: -analyzer-checker=cplusplus.NewDelete
+//
+// RUN: %clang_analyze_cc1 -DLEAKS -DTEST_INLINABLE_ALLOCATORS \
+// RUN: -std=c++11 -fblocks -verify %s \
+// RUN: -analyzer-checker=core \
+// RUN: -analyzer-checker=cplusplus.NewDeleteLeaks
+//
+// RUN: %clang_analyze_cc1 -DTEST_INLINABLE_ALLOCATORS \
+// RUN: -std=c++11 -fblocks -verify %s \
+// RUN: -analyzer-checker=core \
+// RUN: -analyzer-checker=cplusplus.NewDelete \
+// RUN: -analyzer-config c++-allocator-inlining=true
+//
+// RUN: %clang_analyze_cc1 -DLEAKS -DTEST_INLINABLE_ALLOCATORS \
+// RUN: -std=c++11 -fblocks -verify %s \
+// RUN: -analyzer-checker=core \
+// RUN: -analyzer-checker=cplusplus.NewDeleteLeaks \
+// RUN: -analyzer-config c++-allocator-inlining=true
#include "Inputs/system-header-simulator-cxx.h"
<plist version="1.0">
<dict>
<key>clang_version</key>
-<string>clang version 8.0.0 </string>
<key>diagnostics</key>
<array>
<dict>
<key>description</key><string>Object autoreleased too many times</string>
<key>category</key><string>Memory (Core Foundation/Objective-C/OSObject)</string>
<key>type</key><string>Object autoreleased too many times</string>
- <key>check_name</key><string>osx.cocoa.RetainCount</string>
+ <key>check_name</key><string>osx.cocoa.RetainCountBase</string>
<!-- This hash is experimental and going to change! -->
- <key>issue_hash_content_of_line_in_context</key><string>a3c91a7a52619d81ebe032dcc49ebb93</string>
+ <key>issue_hash_content_of_line_in_context</key><string>b6a556c71184371a9567489c8477c2f7</string>
<key>issue_context_kind</key><string>function</string>
<key>issue_context</key><string>testAutoreleaseTakesEffectInDispatch</string>
<key>issue_hash_function_offset</key><string>11</string>
</array>
<key>files</key>
<array>
- <string>/clang/test/Analysis/inlining/path-notes.m</string>
</array>
</dict>
</plist>
-// RUN: %clang_analyze_cc1 -analyzer-store=region -verify %s \
+// RUN: %clang_analyze_cc1 -analyzer-store=region -verify \
// RUN: -analyzer-checker=core \
// RUN: -analyzer-checker=alpha.deadcode.UnreachableCode \
-// RUN: -analyzer-checker=alpha.core.CastSize,unix.Malloc \
-// RUN: -analyzer-config unix.Malloc:Optimistic=true
+// RUN: -analyzer-checker=alpha.core.CastSize \
+// RUN: -analyzer-checker=unix.Malloc \
+// RUN: -analyzer-config unix.DynamicMemoryModeling:Optimistic=true %s
+
typedef __typeof(sizeof(int)) size_t;
void *malloc(size_t);
void free(void *);
-// RUN: %clang_analyze_cc1 -analyzer-checker=core,osx -analyzer-disable-checker osx.cocoa.RetainCount -DNO_CF_OBJECT -verify %s
-// RUN: %clang_analyze_cc1 -analyzer-checker=core,osx -analyzer-disable-checker osx.OSObjectRetainCount -DNO_OS_OBJECT -verify %s
-// RUN: %clang_analyze_cc1 -analyzer-checker=core,osx -analyzer-config "osx.cocoa.RetainCount:CheckOSObject=false" -DNO_OS_OBJECT -verify %s
+// RUN: %clang_analyze_cc1 -DNO_CF_OBJECT -verify %s \
+// RUN: -analyzer-checker=core,osx \
+// RUN: -analyzer-disable-checker osx.cocoa.RetainCount
+//
+// RUN: %clang_analyze_cc1 -DNO_OS_OBJECT -verify %s \
+// RUN: -analyzer-checker=core,osx \
+// RUN: -analyzer-disable-checker osx.OSObjectRetainCount
+//
+// RUN: %clang_analyze_cc1 -DNO_OS_OBJECT -verify %s \
+// RUN: -analyzer-checker=core,osx \
+// RUN: -analyzer-config "osx.cocoa.RetainCount:CheckOSObject=false"
#include "os_object_base.h"
.str();
}
+static void printChecker(llvm::raw_ostream &OS, const Record &R) {
+ OS << "CHECKER(" << "\"";
+ OS.write_escaped(getCheckerFullName(&R)) << "\", ";
+ OS << R.getName() << ", ";
+ OS << "\"";
+ OS.write_escaped(getStringValue(R, "HelpText")) << "\", ";
+ OS << "\"";
+ OS.write_escaped(getCheckerDocs(R));
+ OS << "\"";
+}
+
namespace clang {
void EmitClangSACheckers(RecordKeeper &Records, raw_ostream &OS) {
std::vector<Record*> checkers = Records.getAllDerivedDefinitions("Checker");
OS << "// This file is automatically generated. Do not edit this file by "
"hand.\n";
- OS << "\n#ifdef GET_PACKAGES\n";
+ // Emit packages.
+ //
+ // PACKAGE(PACKAGENAME)
+ // - PACKAGENAME: The name of the package.
+ OS << "\n"
+ "#ifdef GET_PACKAGES\n";
{
SortedRecords sortedPackages;
for (unsigned i = 0, e = packages.size(); i != e; ++i)
OS << ")\n";
}
}
- OS << "#endif // GET_PACKAGES\n\n";
-
- OS << "\n#ifdef GET_CHECKERS\n";
- for (unsigned i = 0, e = checkers.size(); i != e; ++i) {
- const Record &R = *checkers[i];
-
- OS << "CHECKER(" << "\"";
- OS.write_escaped(getCheckerFullName(&R)) << "\", ";
- OS << R.getName() << ", ";
- OS << "\"";
- OS.write_escaped(getStringValue(R, "HelpText")) << "\", ";
- OS << "\"";
- OS.write_escaped(getCheckerDocs(R));
- OS << "\"";
+ OS << "#endif // GET_PACKAGES\n"
+ "\n";
+
+ // Emit checkers.
+ //
+ // CHECKER(FULLNAME, CLASS, HELPTEXT)
+ // - FULLNAME: The full name of the checker, including packages, e.g.:
+ // alpha.cplusplus.UninitializedObject
+ // - CLASS: The name of the checker, with "Checker" appended, e.g.:
+ // UninitializedObjectChecker
+ // - HELPTEXT: The description of the checker.
+ OS << "\n"
+ "#ifdef GET_CHECKERS\n"
+ "\n";
+ for (const Record *checker : checkers) {
+ printChecker(OS, *checker);
OS << ")\n";
}
- OS << "#endif // GET_CHECKERS\n\n";
+ OS << "\n"
+ "#endif // GET_CHECKERS\n"
+ "\n";
+
+ // Emit dependencies.
+ //
+ // CHECKER_DEPENDENCY(FULLNAME, DEPENDENCY)
+ // - FULLNAME: The full name of the checker that depends on another checker.
+ // - DEPENDENCY: The full name of the checker FULLNAME depends on.
+ OS << "\n"
+ "#ifdef GET_CHECKER_DEPENDENCIES\n";
+ for (const Record *checker : checkers) {
+ if (checker->isValueUnset("Dependencies"))
+ continue;
+
+ for (const Record *Dependency :
+ checker->getValueAsListOfDefs("Dependencies")) {
+ OS << "CHECKER_DEPENDENCY(";
+ OS << '\"';
+ OS.write_escaped(getCheckerFullName(checker)) << "\", ";
+ OS << '\"';
+ OS.write_escaped(getCheckerFullName(Dependency)) << '\"';
+ OS << ")\n";
+ }
+ }
+ OS << "\n"
+ "#endif // GET_CHECKER_DEPENDENCIES\n";
}
} // end namespace clang