Done, https://bugs.swift.org/browse/SR-6083 <https://bugs.swift.org/browse/SR-6083>
In the mean time, is there any workaround? Or it’s not possible to check the concrete type without this issue being fixed? > On 7 Oct 2017, at 2:44 PM, Slava Pestov <spes...@apple.com> wrote: > > Oh I see. I think the problem is that with Objective-C generics, you can > always cast from Foo<A> to Foo<B>, because the type parameters do not really > exist. Swift’s type checking logic for casts assumes Swift generic semantics, > where in general Foo<A> and Foo<B> are unrelated types. > > Do you mind filing a bug? > > Slava > >> On Oct 6, 2017, at 11:40 PM, Glen Huang <hey...@gmail.com> wrote: >> >> NSFetchedResultsController is the class from Core Data: >> >> https://developer.apple.com/documentation/coredata/nsfetchedresultscontroller >> >>> On 7 Oct 2017, at 2:38 PM, Slava Pestov <spes...@apple.com> wrote: >>> >>> Can you post a self-contained example, including the declaration of >>> NSFetchedResultsController? >>> >>> Slava >>> >>>> On Oct 6, 2017, at 11:28 PM, Glen Huang via swift-users >>>> <swift-users@swift.org> wrote: >>>> >>>> Hi, >>>> >>>> I defined some concrete classes inheriting from a generic class like this: >>>> >>>> class Controller1: NSFetchedResultsController<NSManagedObject> {} >>>> class Controller2: NSFetchedResultsController<NSManagedObject> {} >>>> >>>> And I assign them a shared delegate, and in the delegate method: >>>> >>>> func controllerWillChangeContent(_ controller: >>>> NSFetchedResultsController<NSFetchRequestResult>) >>>> >>>> I want to test the concrete type of controller, doing things differently >>>> for Controller1 and Controller2. >>>> >>>> But doing the following gives me a warning: Cast from >>>> 'NSFetchedResultsController<NSFetchRequestResult>' to unrelated type >>>> 'Controller1’ always fails >>>> >>>> switch controller { >>>> case is Controller1: >>>> // ... >>>> default: >>>> break >>>> } >>>> >>>> I wonder what’s the correct way to check the concrete type? >>>> >>>> Regards, >>>> Glen >>>> _______________________________________________ >>>> swift-users mailing list >>>> swift-users@swift.org >>>> https://lists.swift.org/mailman/listinfo/swift-users >>> >> >
_______________________________________________ swift-users mailing list swift-users@swift.org https://lists.swift.org/mailman/listinfo/swift-users