@@ -572,15 +572,15 @@ static bool constraintIndicatesRuntimeUnavailability(
572
572
}
573
573
}
574
574
575
- // / Computes the `SemanticDeclAvailability ` value for `decl`.
576
- static SemanticDeclAvailability getSemanticDeclAvailability (const Decl *decl) {
575
+ // / Computes the `DeclRuntimeAvailability ` value for `decl`.
576
+ static DeclRuntimeAvailability getDeclRuntimeAvailability (const Decl *decl) {
577
577
// Don't trust unavailability on declarations from Clang modules.
578
578
if (isa<ClangModuleUnit>(decl->getDeclContext ()->getModuleScopeContext ()))
579
- return SemanticDeclAvailability ::PotentiallyAvailable;
579
+ return DeclRuntimeAvailability ::PotentiallyAvailable;
580
580
581
581
// Check whether the decl is unavailable at all.
582
582
if (!decl->isUnavailable ())
583
- return SemanticDeclAvailability ::PotentiallyAvailable;
583
+ return DeclRuntimeAvailability ::PotentiallyAvailable;
584
584
585
585
auto &ctx = decl->getASTContext ();
586
586
auto compatibilityDomains = availabilityDomainsForABICompatibility (ctx);
@@ -624,37 +624,37 @@ static SemanticDeclAvailability getSemanticDeclAvailability(const Decl *decl) {
624
624
625
625
// Either every compatibility domain has been proven unavailable or this
626
626
// constraint proves runtime unavailability on its own.
627
- return SemanticDeclAvailability ::AlwaysUnavailableABICompatible;
627
+ return DeclRuntimeAvailability ::AlwaysUnavailableABICompatible;
628
628
}
629
629
630
- return SemanticDeclAvailability ::PotentiallyAvailable;
630
+ return DeclRuntimeAvailability ::PotentiallyAvailable;
631
631
}
632
632
633
- SemanticDeclAvailability
634
- SemanticDeclAvailabilityRequest ::evaluate (Evaluator &evaluator,
635
- const Decl *decl) const {
636
- auto inherited = SemanticDeclAvailability ::PotentiallyAvailable;
633
+ DeclRuntimeAvailability
634
+ DeclRuntimeAvailabilityRequest ::evaluate (Evaluator &evaluator,
635
+ const Decl *decl) const {
636
+ auto inherited = DeclRuntimeAvailability ::PotentiallyAvailable;
637
637
if (auto *parent =
638
638
AvailabilityInference::parentDeclForInferredAvailability (decl)) {
639
639
inherited = evaluateOrDefault (
640
- evaluator, SemanticDeclAvailabilityRequest {parent}, inherited);
640
+ evaluator, DeclRuntimeAvailabilityRequest {parent}, inherited);
641
641
}
642
642
643
643
// If the inherited semantic availability is already maximally unavailable
644
644
// then skip computing unavailability for this declaration.
645
- if (inherited == SemanticDeclAvailability ::AlwaysUnavailableABICompatible)
646
- return SemanticDeclAvailability ::AlwaysUnavailableABICompatible;
645
+ if (inherited == DeclRuntimeAvailability ::AlwaysUnavailableABICompatible)
646
+ return DeclRuntimeAvailability ::AlwaysUnavailableABICompatible;
647
647
648
- auto availability = getSemanticDeclAvailability (decl);
648
+ auto availability = getDeclRuntimeAvailability (decl);
649
649
return std::max (inherited, availability);
650
650
}
651
651
652
652
bool Decl::isUnreachableAtRuntime () const {
653
653
auto availability = evaluateOrDefault (
654
- getASTContext ().evaluator , SemanticDeclAvailabilityRequest {this },
655
- SemanticDeclAvailability ::PotentiallyAvailable);
654
+ getASTContext ().evaluator , DeclRuntimeAvailabilityRequest {this },
655
+ DeclRuntimeAvailability ::PotentiallyAvailable);
656
656
return availability ==
657
- SemanticDeclAvailability ::AlwaysUnavailableABICompatible;
657
+ DeclRuntimeAvailability ::AlwaysUnavailableABICompatible;
658
658
}
659
659
660
660
static UnavailableDeclOptimization
0 commit comments