Setters returning a typedef of 'void' should not cause error.
Bug reported by Chris L.
llvm-svn: 60635
diff --git a/clang/lib/Sema/SemaDeclObjC.cpp b/clang/lib/Sema/SemaDeclObjC.cpp
index 5493442..d7b7121 100644
--- a/clang/lib/Sema/SemaDeclObjC.cpp
+++ b/clang/lib/Sema/SemaDeclObjC.cpp
@@ -992,7 +992,8 @@
}
if (SetterMethod) {
- if (SetterMethod->getResultType() != Context.VoidTy)
+ if (Context.getCanonicalType(SetterMethod->getResultType())
+ != Context.VoidTy)
Diag(SetterMethod->getLocation(), diag::err_setter_type_void);
if (SetterMethod->getNumParams() != 1 ||
(SetterMethod->getParamDecl(0)->getType() != property->getType())) {