mirror of
https://github.com/apple/pkl.git
synced 2026-04-27 18:57:12 +02:00
Fix typecheck error on Listing/Mapping (#725)
The addresses the following case:
local l1: Listing<String> = new { 1 }
l2: Listing<Int> = (l1) { 2 }
The member in `l1` should be checked against its owner; to check against `Listing<String>`.
This commit is contained in:
@@ -298,6 +298,9 @@ public final class VmUtils {
|
||||
}
|
||||
}
|
||||
} else if (receiver instanceof VmListingOrMapping<?> vmListingOrMapping) {
|
||||
if (owner != receiver && owner instanceof VmListingOrMapping<?> vmListingOrMappingOwner) {
|
||||
ret = vmListingOrMappingOwner.typecastObjectMember(member, ret, callNode);
|
||||
}
|
||||
ret = vmListingOrMapping.typecastObjectMember(member, ret, callNode);
|
||||
}
|
||||
receiver.setCachedValue(memberKey, ret, member);
|
||||
|
||||
Reference in New Issue
Block a user