rewriting problem. Fixes radar
7680953.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96987
91177308-0d34-0410-b5e6-
96231b3b80d8
RewriteBlockPointerDecl(TD);
else if (TD->getUnderlyingType()->isFunctionPointerType())
CheckFunctionPointerDecl(TD->getUnderlyingType(), TD);
- else if (TD->getUnderlyingType()->isRecordType()) {
- RecordDecl *RD = TD->getUnderlyingType()->getAs<RecordType>()->getDecl();
- if (RD->isDefinition())
- RewriteRecordBody(RD);
- }
return;
}
if (RecordDecl *RD = dyn_cast<RecordDecl>(D)) {
--- /dev/null
+// RUN: %clang_cc1 -x objective-c++ -Wno-return-type -fblocks -fms-extensions -rewrite-objc %s -o %t-rw.cpp
+// RUN: %clang_cc1 -fsyntax-only -Wno-address-of-temporary -D"SEL=void*" -D"__declspec(X)=" %t-rw.cpp
+// radar 7680953
+
+typedef void * id;
+
+@protocol foo
+@end
+
+@interface CL
+{
+ id <foo> changeSource;
+ CL <foo>* changeSource1;
+}
+@end
+
+typedef struct x
+{
+ id <foo> changeSource;
+} x;
+