From 1bc0f9affc20474dbf86842e2f38b00c844207c6 Mon Sep 17 00:00:00 2001 From: Fariborz Jahanian Date: Wed, 18 Nov 2009 21:54:48 +0000 Subject: This patch fixes a bug in misdiagnosing correct use of pointer to data member. llvm-svn: 89251 --- clang/lib/Sema/SemaExprCXX.cpp | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'clang/lib/Sema/SemaExprCXX.cpp') diff --git a/clang/lib/Sema/SemaExprCXX.cpp b/clang/lib/Sema/SemaExprCXX.cpp index 0eea169b072..cf2c696c2b9 100644 --- a/clang/lib/Sema/SemaExprCXX.cpp +++ b/clang/lib/Sema/SemaExprCXX.cpp @@ -1445,6 +1445,12 @@ QualType Sema::CheckPointerToMemberOperands( } } + if (isa(rex)) { + // Diagnose use of pointer-to-member type which when used as + // the functional cast in a pointer-to-member expression. + Diag(Loc, diag::err_pointer_to_member_type) << isIndirect; + return QualType(); + } // C++ 5.5p2 // The result is an object or a function of the type specified by the // second operand. -- cgit v1.2.3