File tree Expand file tree Collapse file tree 1 file changed +2
-2
lines changed Expand file tree Collapse file tree 1 file changed +2
-2
lines changed Original file line number Diff line number Diff line change @@ -3020,15 +3020,15 @@ class SILVerifier : public SILVerifierBase<SILVerifier> {
3020
3020
" requirement Self parameter must conform to called protocol" );
3021
3021
3022
3022
auto lookupType = AMI->getLookupType ();
3023
- if (getOpenedArchetypeOf (lookupType)) {
3023
+ if (getOpenedArchetypeOf (lookupType) || isa<DynamicSelfType>(lookupType) ) {
3024
3024
require (AMI->getTypeDependentOperands ().size () == 1 ,
3025
3025
" Must have a type dependent operand for the opened archetype" );
3026
3026
verifyOpenedArchetype (AMI, lookupType);
3027
3027
} else {
3028
3028
require (AMI->getTypeDependentOperands ().empty (),
3029
3029
" Should not have an operand for the opened existential" );
3030
3030
}
3031
- if (!isa<ArchetypeType>(lookupType)) {
3031
+ if (!isa<ArchetypeType>(lookupType) && !isa<DynamicSelfType>(lookupType) ) {
3032
3032
require (AMI->getConformance ().isConcrete (),
3033
3033
" concrete type lookup requires concrete conformance" );
3034
3034
auto conformance = AMI->getConformance ().getConcrete ();
You can’t perform that action at this time.
0 commit comments