Ambiguous use of init in Swift 2.2
<p>I'm getting an "ambiguous use of init" error when building with Xcode 7.3 and Swift 2.2</p>

<p>The issue is related to two Objective-C classes and how Swift views their initializers.</p>

<p>Objc sees:</p>

<p><em>Superclass</em></p>

<pre><code>@interface Foo: NSManagedObject
+(instancetype)fooWithOwner:(Owner *)owner insertIntoManagedObjectContext:(NSManagedObjectContext *)context;
</code></pre>

<p><em>Subclass</em> </p>

<pre><code>@interface Bar: Foo
+(instancetype)barWithOwner:(Owner *)owner insertIntoManagedObjectContext:(NSManagedObjectContext *)context;
</code></pre>

<p>while Swift only sees:</p>

<pre><code>init(owner: Owner!, insertIntoManagedObjectContext context: NSManagedObjectContext!)
</code></pre>

<p>which is causing the compiler to be unsure of which init is being called on the subclass "Bar". Is there a way to specify which initializer to use when initializing the subclass? I'd like to avoid refactoring the init method if possible.</p>