You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The fact that the Outer type is generic causes the Extended object's one function to become inaccessible. The object's two function remains available only because it overrides a function declared at the level where the Protocol is declared. If the Protocol declaration moves from the Inner to the Extended level, the one function will become available again.
Somehow, this peculiar behaviour is triggered explicitly by the fact that Outer is a generic type. Removing the generic qualifier from Outer restores sanity to the situation.
The text was updated successfully, but these errors were encountered:
Thanks for the reduced test case! I think I know what's going on: the compiler is trying not to infer @objc for a generic method, but in this case the method isn't generic beyond the self type, which should be okay (as noted by Inner working fine).
Additional Detail from JIRA
md5: e6f20fa7ecaf987311c0b5bf2b9a7c8c
duplicates:
Issue Description:
Consider:
The fact that the Outer type is generic causes the Extended object's one function to become inaccessible. The object's two function remains available only because it overrides a function declared at the level where the Protocol is declared. If the Protocol declaration moves from the Inner to the Extended level, the one function will become available again.
Somehow, this peculiar behaviour is triggered explicitly by the fact that Outer is a generic type. Removing the generic qualifier from Outer restores sanity to the situation.
The text was updated successfully, but these errors were encountered: