Call MaybeBindToTemporary for overloaded binary and unary operators.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79173 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/test/CodeGenCXX/temp-1.cpp b/test/CodeGenCXX/temp-1.cpp
index 737bf65..19a6ace 100644
--- a/test/CodeGenCXX/temp-1.cpp
+++ b/test/CodeGenCXX/temp-1.cpp
@@ -49,9 +49,23 @@
 };
 
 // RUN: grep "call void @_ZN1DC1Ev" %t | count 1 &&
-// RUN: grep "call void @_ZN1DD1Ev" %t | count 2
+// RUN: grep "call void @_ZN1DD1Ev" %t | count 2 &&
 void f4() {
   D()();
 }
 
+// Overloaded operators
+struct E {
+  E();
+  ~E();
+  E operator+(const E&);
+  E operator!();
+};
+
+// RUN: grep "call void @_ZN1EC1Ev" %t | count 3 &&
+// RUN: grep "call void @_ZN1ED1Ev" %t | count 5 
+void f5() {
+  E() + E();
+  !E();
+}