From ff83998e31db3b1f072000f98c6511563e604c8d Mon Sep 17 00:00:00 2001 From: Fariborz Jahanian Date: Sat, 6 Dec 2008 21:48:16 +0000 Subject: Improve error reporting of property and setter/getter type mimatches. llvm-svn: 60630 --- clang/lib/Sema/SemaDeclObjC.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'clang/lib/Sema/SemaDeclObjC.cpp') diff --git a/clang/lib/Sema/SemaDeclObjC.cpp b/clang/lib/Sema/SemaDeclObjC.cpp index 83013a7de3b..a5ffb709056 100644 --- a/clang/lib/Sema/SemaDeclObjC.cpp +++ b/clang/lib/Sema/SemaDeclObjC.cpp @@ -933,21 +933,25 @@ Sema::diagnosePropertySetterGetterMismatch(ObjCPropertyDecl *property, const ObjCMethodDecl *GetterMethod, const ObjCMethodDecl *SetterMethod) { if (GetterMethod && - GetterMethod->getResultType() != property->getType()) + GetterMethod->getResultType() != property->getType()) { Diag(property->getLocation(), diag::err_accessor_property_type_mismatch) << property->getDeclName() << GetterMethod->getSelector().getAsIdentifierInfo(); + Diag(GetterMethod->getLocation(), diag::note_declared_at); + } if (SetterMethod) { if (SetterMethod->getResultType() != Context.VoidTy) Diag(SetterMethod->getLocation(), diag::err_setter_type_void); if (SetterMethod->getNumParams() != 1 || - (SetterMethod->getParamDecl(0)->getType() != property->getType())) + (SetterMethod->getParamDecl(0)->getType() != property->getType())) { Diag(property->getLocation(), diag::err_accessor_property_type_mismatch) << property->getDeclName() << SetterMethod->getSelector().getAsIdentifierInfo(); + Diag(SetterMethod->getLocation(), diag::note_declared_at); + } } } -- cgit v1.2.3