mirror of
https://github.com/apple/swift.git
synced 2025-12-21 12:14:44 +01:00
[NCGenerics] fold InverseType into PCT
We already need to track the inverses separate from the members in a ProtocolCompositionType, since inverses aren't real types. Thus, the only purpose being served by InverseType is to be eliminated by RequirementLowering when it appears in a conformance requirement. Instead, we introduce separate type InverseRequirement just to keep track of which inverses we encounter to facilitate cancelling-out defaults and ensuring that the inverses are respected after running the RequirementMachine.
This commit is contained in:
@@ -5139,10 +5139,6 @@ public:
|
||||
llvm_unreachable("modules are currently not first-class values");
|
||||
}
|
||||
|
||||
void visitInverseType(const InverseType *) {
|
||||
llvm_unreachable("inverse types should not escape the type checker");
|
||||
}
|
||||
|
||||
void visitInOutType(const InOutType *) {
|
||||
llvm_unreachable("inout types are only used in function type parameters");
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user