Teach the ObjC mangler to ignore member pointers just like gcc does.

llvm-svn: 104001
diff --git a/clang/test/CodeGenObjCXX/encode.mm b/clang/test/CodeGenObjCXX/encode.mm
index 9dfd14d..4f472ca 100644
--- a/clang/test/CodeGenObjCXX/encode.mm
+++ b/clang/test/CodeGenObjCXX/encode.mm
@@ -2,7 +2,7 @@
 
 // CHECK: v17@0:8{vector<float, float, float>=}16
 // CHECK: {vector<float, float, float>=}
-
+// CHECK: v24@0:816
 
 template <typename T1, typename T2, typename T3> struct vector {
     vector(T1,T2,T3);
@@ -37,3 +37,15 @@
  [sn setPosition:VF3];
 }
 @end
+
+
+class Int3 { int x, y, z; };
+
+// Enforce @encoding for member pointers.
+@interface MemPtr {}
+- (void) foo: (int (Int3::*)) member;
+@end
+@implementation MemPtr
+- (void) foo: (int (Int3::*)) member {
+}
+@end