[analyzer] Add test case for reference to null pointer param check

This tests that we track the original Expr if getDerefExpr fails.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176754 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/test/Analysis/diagnostics/deref-track-symbolic-region.cpp b/test/Analysis/diagnostics/deref-track-symbolic-region.cpp
index bc2dcbd..e166109 100644
--- a/test/Analysis/diagnostics/deref-track-symbolic-region.cpp
+++ b/test/Analysis/diagnostics/deref-track-symbolic-region.cpp
@@ -14,3 +14,15 @@
   r.y = 5; // expected-warning {{Access to field 'y' results in a dereference of a null pointer (loaded from variable 'r')}}
            // expected-note@-1{{Access to field 'y' results in a dereference of a null pointer (loaded from variable 'r')}}
 }
+
+void testRefParam(int *ptr) {
+	int &ref = *ptr; // expected-note {{'ref' initialized here}}
+	if (ptr)
+    // expected-note@-1{{Assuming 'ptr' is null}}
+    // expected-note@-2{{Taking false branch}}
+		return;
+
+	extern void use(int &ref);
+	use(ref); // expected-warning{{Forming reference to null pointer}}
+            // expected-note@-1{{Forming reference to null pointer}}
+}
\ No newline at end of file