[swift-users] Cannot subclass a class with objc_subclassing_restricted attribute

Rick Mann rmann at latencyzero.com
Fri Apr 14 21:41:52 CDT 2017


I'm refactoring some Objective-C code to inherit from a new Swift super class. This has been going okay, and I've been cleaning up build errors as I spot them (some auxiliary enums caused enum name changes, etc.).

But my last error seems to be that I can't subclass the Swift class: "Cannot subclass a class with objc_subclassing_restricted attribute". I didn't notice it before, and all the online references that say you can't subclass a Swift class point to a Swift document that no longer mentions that. They also don't say what they mean by "Swift" class (e.g. is it not marked with @objc?).

In any case, my Swift class looks like:

@objc
class
Camera : NSObject
{
    ...
}

And my ObjC class looks like:

@interface
MCPCamera : Camera

    ...

@end

I feel like this is a reasonable thing to try to do. Is it just not possible?

-- 
Rick Mann
rmann at latencyzero.com




More information about the swift-users mailing list