From c6ea5d4f6e3049617e829e428f78f3d63da2cf52 Mon Sep 17 00:00:00 2001 From: Ted Kremenek Date: Tue, 17 Nov 2009 02:31:39 +0000 Subject: [PATCH] Add test to verify that the analyzer plist output is what we expect. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89029 91177308-0d34-0410-b5e6-96231b3b80d8 --- test/Analysis/plist-output.m | 122 +++++++++++++++++++++++++++++++++++ 1 file changed, 122 insertions(+) create mode 100644 test/Analysis/plist-output.m diff --git a/test/Analysis/plist-output.m b/test/Analysis/plist-output.m new file mode 100644 index 0000000000..f0b2f4dbc7 --- /dev/null +++ b/test/Analysis/plist-output.m @@ -0,0 +1,122 @@ +// RUN: clang-cc -analyze -analyzer-experimental-internal-checks -checker-cfref --analyzer-store=region -analyzer-constraints=range -fblocks --analyzer-output=plist -o - %s | FileCheck %s + +void test_null_init(void) { + int *p = 0; + *p = 0xDEADBEEF; +} +// CHECK: +// CHECK: +// CHECK: +// CHECK: +// CHECK: files +// CHECK: +// CHECK: +// CHECK: diagnostics +// CHECK: +// CHECK: +// CHECK: path +// CHECK: +// CHECK: +// CHECK: kindevent +// CHECK: location +// CHECK: +// CHECK: line4 +// CHECK: col3 +// CHECK: file0 +// CHECK: +// CHECK: ranges +// CHECK: +// CHECK: +// CHECK: +// CHECK: line4 +// CHECK: col3 +// CHECK: file0 +// CHECK: +// CHECK: +// CHECK: line4 +// CHECK: col8 +// CHECK: file0 +// CHECK: +// CHECK: +// CHECK: +// CHECK: extended_message +// CHECK: Variable 'p' initialized to a null pointer value +// CHECK: message +// CHECK: Variable 'p' initialized to a null pointer value +// CHECK: +// CHECK: +// CHECK: kindcontrol +// CHECK: edges +// CHECK: +// CHECK: +// CHECK: start +// CHECK: +// CHECK: +// CHECK: line4 +// CHECK: col3 +// CHECK: file0 +// CHECK: +// CHECK: +// CHECK: line4 +// CHECK: col8 +// CHECK: file0 +// CHECK: +// CHECK: +// CHECK: end +// CHECK: +// CHECK: +// CHECK: line5 +// CHECK: col3 +// CHECK: file0 +// CHECK: +// CHECK: +// CHECK: line5 +// CHECK: col4 +// CHECK: file0 +// CHECK: +// CHECK: +// CHECK: +// CHECK: +// CHECK: +// CHECK: +// CHECK: kindevent +// CHECK: location +// CHECK: +// CHECK: line5 +// CHECK: col3 +// CHECK: file0 +// CHECK: +// CHECK: ranges +// CHECK: +// CHECK: +// CHECK: +// CHECK: line5 +// CHECK: col3 +// CHECK: file0 +// CHECK: +// CHECK: +// CHECK: line5 +// CHECK: col4 +// CHECK: file0 +// CHECK: +// CHECK: +// CHECK: +// CHECK: extended_message +// CHECK: Dereference of null pointer +// CHECK: message +// CHECK: Dereference of null pointer +// CHECK: +// CHECK: +// CHECK: descriptionDereference of null pointer +// CHECK: categoryLogic error +// CHECK: typeNull pointer dereference +// CHECK: location +// CHECK: +// CHECK: line5 +// CHECK: col3 +// CHECK: file0 +// CHECK: +// CHECK: +// CHECK: +// CHECK: +// CHECK: \ No newline at end of file -- 2.50.1