File tree Expand file tree Collapse file tree 1 file changed +9
-0
lines changed Expand file tree Collapse file tree 1 file changed +9
-0
lines changed Original file line number Diff line number Diff line change @@ -6389,6 +6389,12 @@ ConstructorDecl *SwiftDeclConverter::importConstructor(
6389
6389
}
6390
6390
6391
6391
void SwiftDeclConverter::recordObjCOverride (AbstractFunctionDecl *decl) {
6392
+ // Make sure that we always set the overriden declarations.
6393
+ SWIFT_DEFER {
6394
+ if (!decl->overriddenDeclsComputed ())
6395
+ (void )decl->setOverriddenDecls ({ });
6396
+ };
6397
+
6392
6398
// Figure out the class in which this method occurs.
6393
6399
if (!decl->getDeclContext ()->isTypeContext ())
6394
6400
return ;
@@ -6419,6 +6425,7 @@ void SwiftDeclConverter::recordObjCOverride(AbstractFunctionDecl *decl) {
6419
6425
func->getObjCSelector () != foundFunc->getObjCSelector ())
6420
6426
continue ;
6421
6427
func->setOverriddenDecl (foundFunc);
6428
+ func->getAttrs ().add (new (func->getASTContext ()) OverrideAttr (true ));
6422
6429
return ;
6423
6430
}
6424
6431
// Set constructor override.
@@ -6429,6 +6436,8 @@ void SwiftDeclConverter::recordObjCOverride(AbstractFunctionDecl *decl) {
6429
6436
ctor->getObjCSelector () != memberCtor->getObjCSelector ())
6430
6437
continue ;
6431
6438
ctor->setOverriddenDecl (memberCtor);
6439
+ ctor->getAttrs ().add (new (ctor->getASTContext ()) OverrideAttr (true ));
6440
+
6432
6441
// Propagate 'required' to subclass initializers.
6433
6442
if (memberCtor->isRequired () &&
6434
6443
!ctor->getAttrs ().hasAttribute <RequiredAttr>()) {
You can’t perform that action at this time.
0 commit comments