In C++, assignment and compound assignment operators return an lvalue.

llvm-svn: 123158
diff --git a/clang/test/Analysis/lvalue.cpp b/clang/test/Analysis/lvalue.cpp
new file mode 100644
index 0000000..f19c59d
--- /dev/null
+++ b/clang/test/Analysis/lvalue.cpp
@@ -0,0 +1,6 @@
+// RUN: %clang_cc1 -analyze -analyzer-check-objc-mem -analyzer-store=region -verify %s
+
+int f1() {
+  int x = 0, y = 1;
+  return x += y; // Should bind a location to 'x += y'. No crash.
+}