diff options
11 files changed, 50 insertions, 44 deletions
diff --git a/clang/include/clang/StaticAnalyzer/Core/BugReporter/CommonBugCategories.h b/clang/include/clang/StaticAnalyzer/Core/BugReporter/CommonBugCategories.h index 8df2bc331b5..0e80e7bc19b 100644 --- a/clang/include/clang/StaticAnalyzer/Core/BugReporter/CommonBugCategories.h +++ b/clang/include/clang/StaticAnalyzer/Core/BugReporter/CommonBugCategories.h @@ -17,6 +17,7 @@ namespace clang { extern const char * const CoreFoundationObjectiveC; extern const char * const LogicError; extern const char * const MemoryCoreFoundationObjectiveC; + extern const char * const MemoryError; extern const char * const UnixAPI; } } diff --git a/clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp b/clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp index 9a7e83c1492..851114004b9 100644 --- a/clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp +++ b/clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp @@ -19,6 +19,7 @@ #include "clang/Basic/SourceManager.h" #include "clang/Basic/TargetInfo.h" #include "clang/StaticAnalyzer/Core/BugReporter/BugType.h" +#include "clang/StaticAnalyzer/Core/BugReporter/CommonBugCategories.h" #include "clang/StaticAnalyzer/Core/Checker.h" #include "clang/StaticAnalyzer/Core/CheckerManager.h" #include "clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h" @@ -1753,8 +1754,8 @@ void MallocChecker::ReportBadFree(CheckerContext &C, SVal ArgVal, if (ExplodedNode *N = C.generateErrorNode()) { if (!BT_BadFree[*CheckKind]) - BT_BadFree[*CheckKind].reset( - new BugType(CheckNames[*CheckKind], "Bad free", "Memory Error")); + BT_BadFree[*CheckKind].reset(new BugType( + CheckNames[*CheckKind], "Bad free", categories::MemoryError)); SmallString<100> buf; llvm::raw_svector_ostream os(buf); @@ -1798,8 +1799,8 @@ void MallocChecker::ReportFreeAlloca(CheckerContext &C, SVal ArgVal, if (ExplodedNode *N = C.generateErrorNode()) { if (!BT_FreeAlloca[*CheckKind]) - BT_FreeAlloca[*CheckKind].reset( - new BugType(CheckNames[*CheckKind], "Free alloca()", "Memory Error")); + BT_FreeAlloca[*CheckKind].reset(new BugType( + CheckNames[*CheckKind], "Free alloca()", categories::MemoryError)); auto R = llvm::make_unique<BugReport>( *BT_FreeAlloca[*CheckKind], @@ -1824,7 +1825,7 @@ void MallocChecker::ReportMismatchedDealloc(CheckerContext &C, if (!BT_MismatchedDealloc) BT_MismatchedDealloc.reset( new BugType(CheckNames[CK_MismatchedDeallocatorChecker], - "Bad deallocator", "Memory Error")); + "Bad deallocator", categories::MemoryError)); SmallString<100> buf; llvm::raw_svector_ostream os(buf); @@ -1884,8 +1885,8 @@ void MallocChecker::ReportOffsetFree(CheckerContext &C, SVal ArgVal, return; if (!BT_OffsetFree[*CheckKind]) - BT_OffsetFree[*CheckKind].reset( - new BugType(CheckNames[*CheckKind], "Offset free", "Memory Error")); + BT_OffsetFree[*CheckKind].reset(new BugType( + CheckNames[*CheckKind], "Offset free", categories::MemoryError)); SmallString<100> buf; llvm::raw_svector_ostream os(buf); @@ -1936,7 +1937,7 @@ void MallocChecker::ReportUseAfterFree(CheckerContext &C, SourceRange Range, if (ExplodedNode *N = C.generateErrorNode()) { if (!BT_UseFree[*CheckKind]) BT_UseFree[*CheckKind].reset(new BugType( - CheckNames[*CheckKind], "Use-after-free", "Memory Error")); + CheckNames[*CheckKind], "Use-after-free", categories::MemoryError)); auto R = llvm::make_unique<BugReport>(*BT_UseFree[*CheckKind], "Use of memory after it is freed", N); @@ -1962,8 +1963,8 @@ void MallocChecker::ReportDoubleFree(CheckerContext &C, SourceRange Range, if (ExplodedNode *N = C.generateErrorNode()) { if (!BT_DoubleFree[*CheckKind]) - BT_DoubleFree[*CheckKind].reset( - new BugType(CheckNames[*CheckKind], "Double free", "Memory Error")); + BT_DoubleFree[*CheckKind].reset(new BugType( + CheckNames[*CheckKind], "Double free", categories::MemoryError)); auto R = llvm::make_unique<BugReport>( *BT_DoubleFree[*CheckKind], @@ -1991,7 +1992,8 @@ void MallocChecker::ReportDoubleDelete(CheckerContext &C, SymbolRef Sym) const { if (ExplodedNode *N = C.generateErrorNode()) { if (!BT_DoubleDelete) BT_DoubleDelete.reset(new BugType(CheckNames[CK_NewDeleteChecker], - "Double delete", "Memory Error")); + "Double delete", + categories::MemoryError)); auto R = llvm::make_unique<BugReport>( *BT_DoubleDelete, "Attempt to delete released memory", N); @@ -2017,8 +2019,9 @@ void MallocChecker::ReportUseZeroAllocated(CheckerContext &C, if (ExplodedNode *N = C.generateErrorNode()) { if (!BT_UseZerroAllocated[*CheckKind]) - BT_UseZerroAllocated[*CheckKind].reset(new BugType( - CheckNames[*CheckKind], "Use of zero allocated", "Memory Error")); + BT_UseZerroAllocated[*CheckKind].reset( + new BugType(CheckNames[*CheckKind], "Use of zero allocated", + categories::MemoryError)); auto R = llvm::make_unique<BugReport>(*BT_UseZerroAllocated[*CheckKind], "Use of zero-allocated memory", N); @@ -2253,8 +2256,8 @@ void MallocChecker::reportLeak(SymbolRef Sym, ExplodedNode *N, assert(N); if (!BT_Leak[*CheckKind]) { - BT_Leak[*CheckKind].reset( - new BugType(CheckNames[*CheckKind], "Memory leak", "Memory Error")); + BT_Leak[*CheckKind].reset(new BugType(CheckNames[*CheckKind], "Memory leak", + categories::MemoryError)); // Leaks should not be reported if they are post-dominated by a sink: // (1) Sinks are higher importance bugs. // (2) NoReturnFunctionChecker uses sink nodes to represent paths ending diff --git a/clang/lib/StaticAnalyzer/Checkers/NullabilityChecker.cpp b/clang/lib/StaticAnalyzer/Checkers/NullabilityChecker.cpp index 21527d8c347..41999d25276 100644 --- a/clang/lib/StaticAnalyzer/Checkers/NullabilityChecker.cpp +++ b/clang/lib/StaticAnalyzer/Checkers/NullabilityChecker.cpp @@ -178,7 +178,7 @@ private: const MemRegion *Region, BugReporter &BR, const Stmt *ValueExpr = nullptr) const { if (!BT) - BT.reset(new BugType(this, "Nullability", "Memory error")); + BT.reset(new BugType(this, "Nullability", categories::MemoryError)); auto R = llvm::make_unique<BugReport>(*BT, Msg, N); if (Region) { diff --git a/clang/lib/StaticAnalyzer/Checkers/ValistChecker.cpp b/clang/lib/StaticAnalyzer/Checkers/ValistChecker.cpp index d12ba625807..06c4ef71d80 100644 --- a/clang/lib/StaticAnalyzer/Checkers/ValistChecker.cpp +++ b/clang/lib/StaticAnalyzer/Checkers/ValistChecker.cpp @@ -256,7 +256,7 @@ void ValistChecker::reportUninitializedAccess(const MemRegion *VAList, if (!BT_uninitaccess) BT_uninitaccess.reset(new BugType(CheckNames[CK_Uninitialized], "Uninitialized va_list", - "Memory Error")); + categories::MemoryError)); auto R = llvm::make_unique<BugReport>(*BT_uninitaccess, Msg, N); R->markInteresting(VAList); R->addVisitor(llvm::make_unique<ValistBugVisitor>(VAList)); @@ -274,7 +274,8 @@ void ValistChecker::reportLeakedVALists(const RegionVector &LeakedVALists, for (auto Reg : LeakedVALists) { if (!BT_leakedvalist) { BT_leakedvalist.reset(new BugType(CheckNames[CK_Unterminated], - "Leaked va_list", "Memory Error")); + "Leaked va_list", + categories::MemoryError)); BT_leakedvalist->setSuppressOnSink(true); } diff --git a/clang/lib/StaticAnalyzer/Core/CommonBugCategories.cpp b/clang/lib/StaticAnalyzer/Core/CommonBugCategories.cpp index 3cb9323563b..421dfa48c97 100644 --- a/clang/lib/StaticAnalyzer/Core/CommonBugCategories.cpp +++ b/clang/lib/StaticAnalyzer/Core/CommonBugCategories.cpp @@ -16,5 +16,6 @@ const char * const CoreFoundationObjectiveC = "Core Foundation/Objective-C"; const char * const LogicError = "Logic error"; const char * const MemoryCoreFoundationObjectiveC = "Memory (Core Foundation/Objective-C)"; +const char * const MemoryError = "Memory error"; const char * const UnixAPI = "Unix API"; }}} diff --git a/clang/test/Analysis/MismatchedDeallocator-path-notes.cpp b/clang/test/Analysis/MismatchedDeallocator-path-notes.cpp index 118f23bca11..1354386fc8b 100644 --- a/clang/test/Analysis/MismatchedDeallocator-path-notes.cpp +++ b/clang/test/Analysis/MismatchedDeallocator-path-notes.cpp @@ -287,7 +287,7 @@ void test() { // CHECK-NEXT: </dict> // CHECK-NEXT: </array> // CHECK-NEXT: <key>description</key><string>Memory allocated by 'new[]' should be deallocated by 'delete[]', not 'delete'</string> -// CHECK-NEXT: <key>category</key><string>Memory Error</string> +// CHECK-NEXT: <key>category</key><string>Memory error</string> // CHECK-NEXT: <key>type</key><string>Bad deallocator</string> // CHECK-NEXT: <key>check_name</key><string>unix.MismatchedDeallocator</string> // CHECK-NEXT: <!-- This hash is experimental and going to change! --> diff --git a/clang/test/Analysis/NewDelete-path-notes.cpp b/clang/test/Analysis/NewDelete-path-notes.cpp index 115a4addcaa..ac760ca60eb 100644 --- a/clang/test/Analysis/NewDelete-path-notes.cpp +++ b/clang/test/Analysis/NewDelete-path-notes.cpp @@ -257,7 +257,7 @@ void test(Odd *odd) { // CHECK-NEXT: </dict> // CHECK-NEXT: </array> // CHECK-NEXT: <key>description</key><string>Attempt to free released memory</string> -// CHECK-NEXT: <key>category</key><string>Memory Error</string> +// CHECK-NEXT: <key>category</key><string>Memory error</string> // CHECK-NEXT: <key>type</key><string>Double free</string> // CHECK-NEXT: <key>check_name</key><string>cplusplus.NewDelete</string> // CHECK-NEXT: <!-- This hash is experimental and going to change! --> @@ -475,7 +475,7 @@ void test(Odd *odd) { // CHECK-NEXT: </dict> // CHECK-NEXT: </array> // CHECK-NEXT: <key>description</key><string>Attempt to free released memory</string> -// CHECK-NEXT: <key>category</key><string>Memory Error</string> +// CHECK-NEXT: <key>category</key><string>Memory error</string> // CHECK-NEXT: <key>type</key><string>Double free</string> // CHECK-NEXT: <key>check_name</key><string>cplusplus.NewDelete</string> // CHECK-NEXT: <!-- This hash is experimental and going to change! --> diff --git a/clang/test/Analysis/diagnostics/report-issues-within-main-file.cpp b/clang/test/Analysis/diagnostics/report-issues-within-main-file.cpp index 784fdba972d..e1dccc8e320 100644 --- a/clang/test/Analysis/diagnostics/report-issues-within-main-file.cpp +++ b/clang/test/Analysis/diagnostics/report-issues-within-main-file.cpp @@ -945,7 +945,7 @@ void callInMacroArg() { // CHECK-NEXT: </dict> // CHECK-NEXT: </array> // CHECK-NEXT: <key>description</key><string>Memory allocated by 'new[]' should be deallocated by 'delete[]', not 'delete' (within a call to '~auto_ptr')</string> -// CHECK-NEXT: <key>category</key><string>Memory Error</string> +// CHECK-NEXT: <key>category</key><string>Memory error</string> // CHECK-NEXT: <key>type</key><string>Bad deallocator</string> // CHECK-NEXT: <key>check_name</key><string>unix.MismatchedDeallocator</string> // CHECK-NEXT: <!-- This hash is experimental and going to change! --> diff --git a/clang/test/Analysis/edges-new.mm b/clang/test/Analysis/edges-new.mm index 217cd4aa467..47a125ab090 100644 --- a/clang/test/Analysis/edges-new.mm +++ b/clang/test/Analysis/edges-new.mm @@ -20042,7 +20042,7 @@ namespace rdar14960554 { // CHECK-NEXT: </dict> // CHECK-NEXT: </array> // CHECK-NEXT: <key>description</key><string>Potential leak of memory pointed to by 'buf'</string> -// CHECK-NEXT: <key>category</key><string>Memory Error</string> +// CHECK-NEXT: <key>category</key><string>Memory error</string> // CHECK-NEXT: <key>type</key><string>Memory leak</string> // CHECK-NEXT: <key>check_name</key><string>unix.Malloc</string> // CHECK-NEXT: <!-- This hash is experimental and going to change! --> @@ -20284,7 +20284,7 @@ namespace rdar14960554 { // CHECK-NEXT: </dict> // CHECK-NEXT: </array> // CHECK-NEXT: <key>description</key><string>Memory allocated by 'new[]' should be deallocated by 'delete[]', not 'delete'</string> -// CHECK-NEXT: <key>category</key><string>Memory Error</string> +// CHECK-NEXT: <key>category</key><string>Memory error</string> // CHECK-NEXT: <key>type</key><string>Bad deallocator</string> // CHECK-NEXT: <key>check_name</key><string>unix.MismatchedDeallocator</string> // CHECK-NEXT: <!-- This hash is experimental and going to change! --> diff --git a/clang/test/Analysis/malloc-plist.c b/clang/test/Analysis/malloc-plist.c index 26aea160451..e2062e85822 100644 --- a/clang/test/Analysis/malloc-plist.c +++ b/clang/test/Analysis/malloc-plist.c @@ -421,7 +421,7 @@ void testMyMalloc() { // CHECK-NEXT: </dict> // CHECK-NEXT: </array> // CHECK-NEXT: <key>description</key><string>Potential leak of memory pointed to by 'p'</string> -// CHECK-NEXT: <key>category</key><string>Memory Error</string> +// CHECK-NEXT: <key>category</key><string>Memory error</string> // CHECK-NEXT: <key>type</key><string>Memory leak</string> // CHECK-NEXT: <key>check_name</key><string>unix.Malloc</string> // CHECK-NEXT: <!-- This hash is experimental and going to change! --> @@ -586,7 +586,7 @@ void testMyMalloc() { // CHECK-NEXT: </dict> // CHECK-NEXT: </array> // CHECK-NEXT: <key>description</key><string>Potential leak of memory pointed to by 'A'</string> -// CHECK-NEXT: <key>category</key><string>Memory Error</string> +// CHECK-NEXT: <key>category</key><string>Memory error</string> // CHECK-NEXT: <key>type</key><string>Memory leak</string> // CHECK-NEXT: <key>check_name</key><string>unix.Malloc</string> // CHECK-NEXT: <!-- This hash is experimental and going to change! --> @@ -974,7 +974,7 @@ void testMyMalloc() { // CHECK-NEXT: </dict> // CHECK-NEXT: </array> // CHECK-NEXT: <key>description</key><string>Potential leak of memory pointed to by 'buf'</string> -// CHECK-NEXT: <key>category</key><string>Memory Error</string> +// CHECK-NEXT: <key>category</key><string>Memory error</string> // CHECK-NEXT: <key>type</key><string>Memory leak</string> // CHECK-NEXT: <key>check_name</key><string>unix.Malloc</string> // CHECK-NEXT: <!-- This hash is experimental and going to change! --> @@ -1376,7 +1376,7 @@ void testMyMalloc() { // CHECK-NEXT: </dict> // CHECK-NEXT: </array> // CHECK-NEXT: <key>description</key><string>Potential leak of memory pointed to by 'buf'</string> -// CHECK-NEXT: <key>category</key><string>Memory Error</string> +// CHECK-NEXT: <key>category</key><string>Memory error</string> // CHECK-NEXT: <key>type</key><string>Memory leak</string> // CHECK-NEXT: <key>check_name</key><string>unix.Malloc</string> // CHECK-NEXT: <!-- This hash is experimental and going to change! --> @@ -1962,7 +1962,7 @@ void testMyMalloc() { // CHECK-NEXT: </dict> // CHECK-NEXT: </array> // CHECK-NEXT: <key>description</key><string>Use of memory after it is freed</string> -// CHECK-NEXT: <key>category</key><string>Memory Error</string> +// CHECK-NEXT: <key>category</key><string>Memory error</string> // CHECK-NEXT: <key>type</key><string>Use-after-free</string> // CHECK-NEXT: <key>check_name</key><string>unix.Malloc</string> // CHECK-NEXT: <!-- This hash is experimental and going to change! --> @@ -2524,7 +2524,7 @@ void testMyMalloc() { // CHECK-NEXT: </dict> // CHECK-NEXT: </array> // CHECK-NEXT: <key>description</key><string>Potential leak of memory pointed to by 'buf'</string> -// CHECK-NEXT: <key>category</key><string>Memory Error</string> +// CHECK-NEXT: <key>category</key><string>Memory error</string> // CHECK-NEXT: <key>type</key><string>Memory leak</string> // CHECK-NEXT: <key>check_name</key><string>unix.Malloc</string> // CHECK-NEXT: <!-- This hash is experimental and going to change! --> @@ -2795,7 +2795,7 @@ void testMyMalloc() { // CHECK-NEXT: </dict> // CHECK-NEXT: </array> // CHECK-NEXT: <key>description</key><string>Potential leak of memory pointed to by 'v'</string> -// CHECK-NEXT: <key>category</key><string>Memory Error</string> +// CHECK-NEXT: <key>category</key><string>Memory error</string> // CHECK-NEXT: <key>type</key><string>Memory leak</string> // CHECK-NEXT: <key>check_name</key><string>unix.Malloc</string> // CHECK-NEXT: <!-- This hash is experimental and going to change! --> @@ -3144,7 +3144,7 @@ void testMyMalloc() { // CHECK-NEXT: </dict> // CHECK-NEXT: </array> // CHECK-NEXT: <key>description</key><string>Use of memory after it is freed</string> -// CHECK-NEXT: <key>category</key><string>Memory Error</string> +// CHECK-NEXT: <key>category</key><string>Memory error</string> // CHECK-NEXT: <key>type</key><string>Use-after-free</string> // CHECK-NEXT: <key>check_name</key><string>unix.Malloc</string> // CHECK-NEXT: <!-- This hash is experimental and going to change! --> @@ -3309,7 +3309,7 @@ void testMyMalloc() { // CHECK-NEXT: </dict> // CHECK-NEXT: </array> // CHECK-NEXT: <key>description</key><string>Potential leak of memory pointed to by 'm'</string> -// CHECK-NEXT: <key>category</key><string>Memory Error</string> +// CHECK-NEXT: <key>category</key><string>Memory error</string> // CHECK-NEXT: <key>type</key><string>Memory leak</string> // CHECK-NEXT: <key>check_name</key><string>unix.Malloc</string> // CHECK-NEXT: <!-- This hash is experimental and going to change! --> @@ -3517,7 +3517,7 @@ void testMyMalloc() { // CHECK-NEXT: </dict> // CHECK-NEXT: </array> // CHECK-NEXT: <key>description</key><string>Potential leak of memory pointed to by 'x'</string> -// CHECK-NEXT: <key>category</key><string>Memory Error</string> +// CHECK-NEXT: <key>category</key><string>Memory error</string> // CHECK-NEXT: <key>type</key><string>Memory leak</string> // CHECK-NEXT: <key>check_name</key><string>unix.Malloc</string> // CHECK-NEXT: <!-- This hash is experimental and going to change! --> @@ -3725,7 +3725,7 @@ void testMyMalloc() { // CHECK-NEXT: </dict> // CHECK-NEXT: </array> // CHECK-NEXT: <key>description</key><string>Potential leak of memory pointed to by 'x'</string> -// CHECK-NEXT: <key>category</key><string>Memory Error</string> +// CHECK-NEXT: <key>category</key><string>Memory error</string> // CHECK-NEXT: <key>type</key><string>Memory leak</string> // CHECK-NEXT: <key>check_name</key><string>unix.Malloc</string> // CHECK-NEXT: <!-- This hash is experimental and going to change! --> @@ -4030,7 +4030,7 @@ void testMyMalloc() { // CHECK-NEXT: </dict> // CHECK-NEXT: </array> // CHECK-NEXT: <key>description</key><string>Potential leak of memory pointed to by 'x'</string> -// CHECK-NEXT: <key>category</key><string>Memory Error</string> +// CHECK-NEXT: <key>category</key><string>Memory error</string> // CHECK-NEXT: <key>type</key><string>Memory leak</string> // CHECK-NEXT: <key>check_name</key><string>unix.Malloc</string> // CHECK-NEXT: <!-- This hash is experimental and going to change! --> @@ -4335,7 +4335,7 @@ void testMyMalloc() { // CHECK-NEXT: </dict> // CHECK-NEXT: </array> // CHECK-NEXT: <key>description</key><string>Potential leak of memory pointed to by 'x'</string> -// CHECK-NEXT: <key>category</key><string>Memory Error</string> +// CHECK-NEXT: <key>category</key><string>Memory error</string> // CHECK-NEXT: <key>type</key><string>Memory leak</string> // CHECK-NEXT: <key>check_name</key><string>unix.Malloc</string> // CHECK-NEXT: <!-- This hash is experimental and going to change! --> @@ -4543,7 +4543,7 @@ void testMyMalloc() { // CHECK-NEXT: </dict> // CHECK-NEXT: </array> // CHECK-NEXT: <key>description</key><string>Potential leak of memory pointed to by 'x'</string> -// CHECK-NEXT: <key>category</key><string>Memory Error</string> +// CHECK-NEXT: <key>category</key><string>Memory error</string> // CHECK-NEXT: <key>type</key><string>Memory leak</string> // CHECK-NEXT: <key>check_name</key><string>unix.Malloc</string> // CHECK-NEXT: <!-- This hash is experimental and going to change! --> @@ -4751,7 +4751,7 @@ void testMyMalloc() { // CHECK-NEXT: </dict> // CHECK-NEXT: </array> // CHECK-NEXT: <key>description</key><string>Potential leak of memory pointed to by 'x'</string> -// CHECK-NEXT: <key>category</key><string>Memory Error</string> +// CHECK-NEXT: <key>category</key><string>Memory error</string> // CHECK-NEXT: <key>type</key><string>Memory leak</string> // CHECK-NEXT: <key>check_name</key><string>unix.Malloc</string> // CHECK-NEXT: <!-- This hash is experimental and going to change! --> @@ -4988,7 +4988,7 @@ void testMyMalloc() { // CHECK-NEXT: </dict> // CHECK-NEXT: </array> // CHECK-NEXT: <key>description</key><string>Potential memory leak</string> -// CHECK-NEXT: <key>category</key><string>Memory Error</string> +// CHECK-NEXT: <key>category</key><string>Memory error</string> // CHECK-NEXT: <key>type</key><string>Memory leak</string> // CHECK-NEXT: <key>check_name</key><string>unix.Malloc</string> // CHECK-NEXT: <!-- This hash is experimental and going to change! --> @@ -5225,7 +5225,7 @@ void testMyMalloc() { // CHECK-NEXT: </dict> // CHECK-NEXT: </array> // CHECK-NEXT: <key>description</key><string>Potential memory leak</string> -// CHECK-NEXT: <key>category</key><string>Memory Error</string> +// CHECK-NEXT: <key>category</key><string>Memory error</string> // CHECK-NEXT: <key>type</key><string>Memory leak</string> // CHECK-NEXT: <key>check_name</key><string>unix.Malloc</string> // CHECK-NEXT: <!-- This hash is experimental and going to change! --> @@ -5496,7 +5496,7 @@ void testMyMalloc() { // CHECK-NEXT: </dict> // CHECK-NEXT: </array> // CHECK-NEXT: <key>description</key><string>Potential memory leak</string> -// CHECK-NEXT: <key>category</key><string>Memory Error</string> +// CHECK-NEXT: <key>category</key><string>Memory error</string> // CHECK-NEXT: <key>type</key><string>Memory leak</string> // CHECK-NEXT: <key>check_name</key><string>unix.Malloc</string> // CHECK-NEXT: <!-- This hash is experimental and going to change! --> diff --git a/clang/test/Analysis/plist-macros.cpp b/clang/test/Analysis/plist-macros.cpp index 594cfdc6efc..18d3ce11e67 100644 --- a/clang/test/Analysis/plist-macros.cpp +++ b/clang/test/Analysis/plist-macros.cpp @@ -218,7 +218,7 @@ void test2(int *p) { // CHECK-NEXT: </dict> // CHECK-NEXT: </array> // CHECK-NEXT: <key>description</key><string>Memory allocated by malloc() should be deallocated by free(), not 'delete'</string> -// CHECK-NEXT: <key>category</key><string>Memory Error</string> +// CHECK-NEXT: <key>category</key><string>Memory error</string> // CHECK-NEXT: <key>type</key><string>Bad deallocator</string> // CHECK-NEXT: <key>check_name</key><string>unix.MismatchedDeallocator</string> // CHECK-NEXT: <!-- This hash is experimental and going to change! --> @@ -315,7 +315,7 @@ void test2(int *p) { // CHECK-NEXT: </dict> // CHECK-NEXT: </array> // CHECK-NEXT: <key>description</key><string>Potential leak of memory pointed to by 'x'</string> -// CHECK-NEXT: <key>category</key><string>Memory Error</string> +// CHECK-NEXT: <key>category</key><string>Memory error</string> // CHECK-NEXT: <key>type</key><string>Memory leak</string> // CHECK-NEXT: <key>check_name</key><string>unix.Malloc</string> // CHECK-NEXT: <!-- This hash is experimental and going to change! --> |