Files
swift-mirror/test/Sema/Inputs/conformance_availability_overlapping_other.swift
Slava Pestov a250688a50 AST: Use availability to disambiguate multiple overlapping conformances
If a conformance is found in an imported module as well as the current module,
and one of the two conformances is conditionally unavailable on the current
deployment target, pick the one that is always available.

Fixes <rdar://problem/78633800>.
2021-06-07 00:45:59 -04:00

16 lines
367 B
Swift

public protocol P {}
public struct HasUnavailableConformance {}
@available(*, unavailable)
extension HasUnavailableConformance : P {}
public struct HasConditionallyAvailableConformance {}
@available(macOS 100, *)
extension HasConditionallyAvailableConformance : P {}
public struct HasAlwaysAvailableConformance {}
extension HasAlwaysAvailableConformance : P {}