diff options
-rw-r--r-- | lib/Sema/SemaLookup.cpp | 2 | ||||
-rw-r--r-- | test/Modules/decldef.mm | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/lib/Sema/SemaLookup.cpp b/lib/Sema/SemaLookup.cpp index a6ad8f8fcf..a1713ee685 100644 --- a/lib/Sema/SemaLookup.cpp +++ b/lib/Sema/SemaLookup.cpp @@ -1063,6 +1063,8 @@ static NamedDecl *getPreviousDeclaration(NamedDecl *D) { return FD->getPreviousDeclaration(); if (RedeclarableTemplateDecl *RTD = dyn_cast<RedeclarableTemplateDecl>(D)) return RTD->getPreviousDeclaration(); + if (ObjCInterfaceDecl *ID = dyn_cast<ObjCInterfaceDecl>(D)) + return ID->getPreviousDeclaration(); return 0; } diff --git a/test/Modules/decldef.mm b/test/Modules/decldef.mm index bbdcd9cb8f..3d24a0ef53 100644 --- a/test/Modules/decldef.mm +++ b/test/Modules/decldef.mm @@ -7,9 +7,7 @@ B *b1; // expected-error{{unknown type name 'B'}} __import_module__ decldef.Decl; -// FIXME: No link between @interface (which we can't see) and @class -// (which we can). -// A *a2; +A *a2; B *b; void testB() { |