diff options
Diffstat (limited to 'clang/lib/Sema/SemaDeclObjC.cpp')
-rw-r--r-- | clang/lib/Sema/SemaDeclObjC.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/clang/lib/Sema/SemaDeclObjC.cpp b/clang/lib/Sema/SemaDeclObjC.cpp index 33d9e95f27f..d958db582af 100644 --- a/clang/lib/Sema/SemaDeclObjC.cpp +++ b/clang/lib/Sema/SemaDeclObjC.cpp @@ -2715,8 +2715,9 @@ Decl *Sema::ActOnAtEnd(Scope *S, SourceRange AtEnd, ArrayRef<Decl *> allMethods, AtomicPropertySetterGetterRules(IC, IDecl); DiagnoseOwningPropertyGetterSynthesis(IC); DiagnoseUnusedBackingIvarInAccessor(S, IC); - if (IDecl->hasDesignatedInitializers()) - DiagnoseMissingDesignatedInitOverrides(IC, IDecl); + if (IDecl->hasDesignatedInitializers() || + IDecl->hasDesignatedInitializersInSuperClass()) + DiagnoseMissingDesignatedInitOverrides(IC); bool HasRootClassAttr = IDecl->hasAttr<ObjCRootClassAttr>(); if (IDecl->getSuperClass() == nullptr) { |