balazske updated this revision to Diff 280385.
balazske added a comment.

Fixed failed tests because change of bug category from "Logic error" to "Memory 
error".


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D84494/new/

https://reviews.llvm.org/D84494

Files:
  clang/lib/StaticAnalyzer/Checkers/DereferenceChecker.cpp
  clang/test/Analysis/Inputs/expected-plists/conditional-path-notes.c.plist
  clang/test/Analysis/Inputs/expected-plists/cxx-for-range.cpp.plist
  clang/test/Analysis/Inputs/expected-plists/edges-new.mm.plist
  clang/test/Analysis/Inputs/expected-plists/inline-plist.c.plist
  clang/test/Analysis/Inputs/expected-plists/inline-unique-reports.c.plist
  clang/test/Analysis/Inputs/expected-plists/null-deref-path-notes.m.plist
  clang/test/Analysis/Inputs/expected-plists/objc-arc.m.plist
  
clang/test/Analysis/Inputs/expected-plists/plist-macros-with-expansion.cpp.plist
  clang/test/Analysis/Inputs/expected-plists/plist-macros.cpp.plist
  clang/test/Analysis/Inputs/expected-plists/plist-output-alternate.m.plist
  clang/test/Analysis/Inputs/expected-plists/plist-output.m.plist
  clang/test/Analysis/Inputs/expected-plists/retain-release.m.objc.plist
  clang/test/Analysis/Inputs/expected-plists/retain-release.m.objcpp.plist
  clang/test/Analysis/Inputs/expected-plists/unix-fns.c.plist
  
clang/test/Analysis/diagnostics/Inputs/expected-plists/deref-track-symbolic-region.c.plist
  
clang/test/Analysis/diagnostics/Inputs/expected-plists/plist-multi-file.c.plist
  
clang/test/Analysis/diagnostics/Inputs/expected-plists/undef-value-param.c.plist
  
clang/test/Analysis/inlining/Inputs/expected-plists/eager-reclamation-path-notes.c.plist
  clang/test/Analysis/inlining/Inputs/expected-plists/path-notes.c.plist
  clang/test/Analysis/inlining/Inputs/expected-plists/path-notes.cpp.plist
  clang/test/Analysis/inlining/Inputs/expected-plists/path-notes.m.plist

Index: clang/test/Analysis/inlining/Inputs/expected-plists/path-notes.m.plist
===================================================================
--- clang/test/Analysis/inlining/Inputs/expected-plists/path-notes.m.plist
+++ clang/test/Analysis/inlining/Inputs/expected-plists/path-notes.m.plist
@@ -334,7 +334,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -1506,7 +1506,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;x&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
Index: clang/test/Analysis/inlining/Inputs/expected-plists/path-notes.cpp.plist
===================================================================
--- clang/test/Analysis/inlining/Inputs/expected-plists/path-notes.cpp.plist
+++ clang/test/Analysis/inlining/Inputs/expected-plists/path-notes.cpp.plist
@@ -478,7 +478,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -718,7 +718,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -1050,7 +1050,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;globalPtr&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -1380,7 +1380,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;globalPtr&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -1710,7 +1710,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;globalPtr&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -2042,7 +2042,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;globalPtr&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -2377,7 +2377,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;globalPtr&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -2685,7 +2685,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;globalPtr&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -3810,7 +3810,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from field &apos;ptr&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -4028,7 +4028,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;y&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -4184,7 +4184,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from field &apos;x&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -4373,7 +4373,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -4528,7 +4528,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of undefined pointer value</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of undefined pointer value</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -5192,7 +5192,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
Index: clang/test/Analysis/inlining/Inputs/expected-plists/path-notes.c.plist
===================================================================
--- clang/test/Analysis/inlining/Inputs/expected-plists/path-notes.c.plist
+++ clang/test/Analysis/inlining/Inputs/expected-plists/path-notes.c.plist
@@ -242,7 +242,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;a&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -433,7 +433,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;a&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -685,7 +685,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;a&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -938,7 +938,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;a&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -1229,7 +1229,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -1521,7 +1521,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -1944,7 +1944,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;a&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -2368,7 +2368,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;a&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -2835,7 +2835,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -3100,7 +3100,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from field &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -3257,7 +3257,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from field &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -3446,7 +3446,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
Index: clang/test/Analysis/inlining/Inputs/expected-plists/eager-reclamation-path-notes.c.plist
===================================================================
--- clang/test/Analysis/inlining/Inputs/expected-plists/eager-reclamation-path-notes.c.plist
+++ clang/test/Analysis/inlining/Inputs/expected-plists/eager-reclamation-path-notes.c.plist
@@ -242,7 +242,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;ptr&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -613,7 +613,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;ptr&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
Index: clang/test/Analysis/diagnostics/Inputs/expected-plists/undef-value-param.c.plist
===================================================================
--- clang/test/Analysis/diagnostics/Inputs/expected-plists/undef-value-param.c.plist
+++ clang/test/Analysis/diagnostics/Inputs/expected-plists/undef-value-param.c.plist
@@ -1305,7 +1305,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from field &apos;f1&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
Index: clang/test/Analysis/diagnostics/Inputs/expected-plists/plist-multi-file.c.plist
===================================================================
--- clang/test/Analysis/diagnostics/Inputs/expected-plists/plist-multi-file.c.plist
+++ clang/test/Analysis/diagnostics/Inputs/expected-plists/plist-multi-file.c.plist
@@ -170,7 +170,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;ptr&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
Index: clang/test/Analysis/diagnostics/Inputs/expected-plists/deref-track-symbolic-region.c.plist
===================================================================
--- clang/test/Analysis/diagnostics/Inputs/expected-plists/deref-track-symbolic-region.c.plist
+++ clang/test/Analysis/diagnostics/Inputs/expected-plists/deref-track-symbolic-region.c.plist
@@ -267,7 +267,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from field &apos;x&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -619,7 +619,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
Index: clang/test/Analysis/Inputs/expected-plists/unix-fns.c.plist
===================================================================
--- clang/test/Analysis/Inputs/expected-plists/unix-fns.c.plist
+++ clang/test/Analysis/Inputs/expected-plists/unix-fns.c.plist
@@ -1924,7 +1924,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -2427,7 +2427,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -2968,7 +2968,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
Index: clang/test/Analysis/Inputs/expected-plists/retain-release.m.objcpp.plist
===================================================================
--- clang/test/Analysis/Inputs/expected-plists/retain-release.m.objcpp.plist
+++ clang/test/Analysis/Inputs/expected-plists/retain-release.m.objcpp.plist
@@ -2142,7 +2142,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -9744,7 +9744,7 @@
     </dict>
    </array>
    <key>description</key><string>Array access (from variable &apos;kindC&apos;) results in a null pointer dereference</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
Index: clang/test/Analysis/Inputs/expected-plists/retain-release.m.objc.plist
===================================================================
--- clang/test/Analysis/Inputs/expected-plists/retain-release.m.objc.plist
+++ clang/test/Analysis/Inputs/expected-plists/retain-release.m.objc.plist
@@ -2142,7 +2142,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -9744,7 +9744,7 @@
     </dict>
    </array>
    <key>description</key><string>Array access (from variable &apos;kindC&apos;) results in a null pointer dereference</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
Index: clang/test/Analysis/Inputs/expected-plists/plist-output.m.plist
===================================================================
--- clang/test/Analysis/Inputs/expected-plists/plist-output.m.plist
+++ clang/test/Analysis/Inputs/expected-plists/plist-output.m.plist
@@ -136,7 +136,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -325,7 +325,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -578,7 +578,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;q&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -769,7 +769,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -1021,7 +1021,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -1211,7 +1211,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from field &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -1561,7 +1561,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -1845,7 +1845,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -2098,7 +2098,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -2907,7 +2907,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -3128,7 +3128,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -3347,7 +3347,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -3919,7 +3919,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -4432,7 +4432,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -5010,7 +5010,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -5591,7 +5591,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -6026,7 +6026,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from ivar &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -6366,7 +6366,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
Index: clang/test/Analysis/Inputs/expected-plists/plist-output-alternate.m.plist
===================================================================
--- clang/test/Analysis/Inputs/expected-plists/plist-output-alternate.m.plist
+++ clang/test/Analysis/Inputs/expected-plists/plist-output-alternate.m.plist
@@ -136,7 +136,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -325,7 +325,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -578,7 +578,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;q&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -769,7 +769,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -1021,7 +1021,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -1211,7 +1211,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from field &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
Index: clang/test/Analysis/Inputs/expected-plists/plist-macros.cpp.plist
===================================================================
--- clang/test/Analysis/Inputs/expected-plists/plist-macros.cpp.plist
+++ clang/test/Analysis/Inputs/expected-plists/plist-macros.cpp.plist
@@ -503,7 +503,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -824,7 +824,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -1049,7 +1049,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -1205,7 +1205,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -1519,7 +1519,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -1816,7 +1816,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;a&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
Index: clang/test/Analysis/Inputs/expected-plists/plist-macros-with-expansion.cpp.plist
===================================================================
--- clang/test/Analysis/Inputs/expected-plists/plist-macros-with-expansion.cpp.plist
+++ clang/test/Analysis/Inputs/expected-plists/plist-macros-with-expansion.cpp.plist
@@ -149,7 +149,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;ptr&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -318,7 +318,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;ptr&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -593,7 +593,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;ptr&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -846,7 +846,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;a&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -1017,7 +1017,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;ptr&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -1186,7 +1186,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;ptr&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -1355,7 +1355,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;ptr&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -1524,7 +1524,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;a&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -1693,7 +1693,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;a&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -1862,7 +1862,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;a&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -2137,7 +2137,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;a&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -2554,7 +2554,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;a&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -2974,7 +2974,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;a&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -3336,7 +3336,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;ptr&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -3440,7 +3440,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;ptr&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -3607,7 +3607,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;ptr&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -3776,7 +3776,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;ptr&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -4051,7 +4051,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;ptr&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -4222,7 +4222,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;ptr&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -4391,7 +4391,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;ptr&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -4560,7 +4560,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;ptr&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -4729,7 +4729,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;a&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -4898,7 +4898,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;ptr&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -5067,7 +5067,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;a&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -5475,7 +5475,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;ptr&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
Index: clang/test/Analysis/Inputs/expected-plists/objc-arc.m.plist
===================================================================
--- clang/test/Analysis/Inputs/expected-plists/objc-arc.m.plist
+++ clang/test/Analysis/Inputs/expected-plists/objc-arc.m.plist
@@ -136,7 +136,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -2053,7 +2053,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
Index: clang/test/Analysis/Inputs/expected-plists/null-deref-path-notes.m.plist
===================================================================
--- clang/test/Analysis/Inputs/expected-plists/null-deref-path-notes.m.plist
+++ clang/test/Analysis/Inputs/expected-plists/null-deref-path-notes.m.plist
@@ -233,7 +233,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;x&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -471,7 +471,7 @@
     </dict>
    </array>
    <key>description</key><string>Access to instance variable &apos;uniqueID&apos; results in a dereference of a null pointer (loaded from variable &apos;self&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -758,7 +758,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -992,7 +992,7 @@
     </dict>
    </array>
    <key>description</key><string>Array access (via ivar &apos;p&apos;) results in a null pointer dereference</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
Index: clang/test/Analysis/Inputs/expected-plists/inline-unique-reports.c.plist
===================================================================
--- clang/test/Analysis/Inputs/expected-plists/inline-unique-reports.c.plist
+++ clang/test/Analysis/Inputs/expected-plists/inline-unique-reports.c.plist
@@ -242,7 +242,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
Index: clang/test/Analysis/Inputs/expected-plists/inline-plist.c.plist
===================================================================
--- clang/test/Analysis/Inputs/expected-plists/inline-plist.c.plist
+++ clang/test/Analysis/Inputs/expected-plists/inline-plist.c.plist
@@ -371,7 +371,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -763,7 +763,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -998,7 +998,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -1417,7 +1417,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -1714,7 +1714,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -2011,7 +2011,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
Index: clang/test/Analysis/Inputs/expected-plists/edges-new.mm.plist
===================================================================
--- clang/test/Analysis/Inputs/expected-plists/edges-new.mm.plist
+++ clang/test/Analysis/Inputs/expected-plists/edges-new.mm.plist
@@ -136,7 +136,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -325,7 +325,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -578,7 +578,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;q&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -769,7 +769,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -1021,7 +1021,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -1211,7 +1211,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from field &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -1561,7 +1561,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -1845,7 +1845,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -2309,7 +2309,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -3121,7 +3121,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -3439,7 +3439,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -3722,7 +3722,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -4424,7 +4424,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -4939,7 +4939,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -5517,7 +5517,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -6098,7 +6098,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -6562,7 +6562,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -6824,7 +6824,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -7082,7 +7082,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -7403,7 +7403,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -7724,7 +7724,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -8209,7 +8209,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -8735,7 +8735,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -9186,7 +9186,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -9535,7 +9535,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -9755,7 +9755,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -9939,7 +9939,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -10346,7 +10346,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -10738,7 +10738,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from ivar &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -11083,7 +11083,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -11338,7 +11338,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -11800,7 +11800,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -12383,7 +12383,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -12938,7 +12938,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -13558,7 +13558,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -15089,7 +15089,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -16758,7 +16758,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -18651,7 +18651,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -20643,7 +20643,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -22114,7 +22114,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -22389,7 +22389,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
Index: clang/test/Analysis/Inputs/expected-plists/cxx-for-range.cpp.plist
===================================================================
--- clang/test/Analysis/Inputs/expected-plists/cxx-for-range.cpp.plist
+++ clang/test/Analysis/Inputs/expected-plists/cxx-for-range.cpp.plist
@@ -624,7 +624,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -931,7 +931,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -1219,7 +1219,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -1380,7 +1380,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -1669,7 +1669,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -1829,7 +1829,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -2112,7 +2112,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
Index: clang/test/Analysis/Inputs/expected-plists/conditional-path-notes.c.plist
===================================================================
--- clang/test/Analysis/Inputs/expected-plists/conditional-path-notes.c.plist
+++ clang/test/Analysis/Inputs/expected-plists/conditional-path-notes.c.plist
@@ -267,7 +267,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;x&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -456,7 +456,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -611,7 +611,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -765,7 +765,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -919,7 +919,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;x&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -1108,7 +1108,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -1297,7 +1297,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -1549,7 +1549,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
@@ -1738,7 +1738,7 @@
     </dict>
    </array>
    <key>description</key><string>Dereference of null pointer</string>
-   <key>category</key><string>Logic error</string>
+   <key>category</key><string>Memory error</string>
    <key>type</key><string>Dereference of null pointer</string>
    <key>check_name</key><string>core.NullDereference</string>
    <!-- This hash is experimental and going to change! -->
Index: clang/lib/StaticAnalyzer/Checkers/DereferenceChecker.cpp
===================================================================
--- clang/lib/StaticAnalyzer/Checkers/DereferenceChecker.cpp
+++ clang/lib/StaticAnalyzer/Checkers/DereferenceChecker.cpp
@@ -30,8 +30,9 @@
     : public Checker< check::Location,
                       check::Bind,
                       EventDispatcher<ImplicitNullDerefEvent> > {
-  mutable std::unique_ptr<BuiltinBug> BT_null;
-  mutable std::unique_ptr<BuiltinBug> BT_undef;
+  BugType BT_Null{this, "Dereference of null pointer", categories::MemoryError};
+  BugType BT_Undef{this, "Dereference of undefined pointer value",
+                   categories::MemoryError};
 
   void reportBug(ProgramStateRef State, const Stmt *S, CheckerContext &C) const;
 
@@ -123,11 +124,6 @@
   if (!N)
     return;
 
-  // We know that 'location' cannot be non-null.  This is what
-  // we call an "explicit" null dereference.
-  if (!BT_null)
-    BT_null.reset(new BuiltinBug(this, "Dereference of null pointer"));
-
   SmallString<100> buf;
   llvm::raw_svector_ostream os(buf);
 
@@ -180,7 +176,7 @@
   }
 
   auto report = std::make_unique<PathSensitiveBugReport>(
-      *BT_null, buf.empty() ? BT_null->getDescription() : StringRef(buf), N);
+      BT_Null, buf.empty() ? BT_Null.getDescription() : StringRef(buf), N);
 
   bugreporter::trackExpressionValue(N, bugreporter::getDerefExpr(S), *report);
 
@@ -196,12 +192,8 @@
   // Check for dereference of an undefined value.
   if (l.isUndef()) {
     if (ExplodedNode *N = C.generateErrorNode()) {
-      if (!BT_undef)
-        BT_undef.reset(
-            new BuiltinBug(this, "Dereference of undefined pointer value"));
-
       auto report = std::make_unique<PathSensitiveBugReport>(
-          *BT_undef, BT_undef->getDescription(), N);
+          BT_Undef, BT_Undef.getDescription(), N);
       bugreporter::trackExpressionValue(N, bugreporter::getDerefExpr(S), *report);
       C.emitReport(std::move(report));
     }
@@ -220,6 +212,8 @@
   std::tie(notNullState, nullState) = state->assume(location);
 
   // The explicit NULL case.
+  // We know that 'location' cannot be non-null.  This is what
+  // we call an "explicit" null dereference.
   if (nullState) {
     if (!notNullState) {
       const Expr *expr = getDereferenceExpr(S);
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to