Skip to content

Commit d4d9c9e

Browse files
committed
TBDGen: Adopt SemanticAvailableAttr.
1 parent 05d342e commit d4d9c9e

File tree

1 file changed

+11
-13
lines changed

1 file changed

+11
-13
lines changed

lib/IRGen/TBDGen.cpp

Lines changed: 11 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -770,20 +770,18 @@ class APIGenRecorder final : public APIRecorder {
770770
std::string introduced, obsoleted;
771771
bool hasFallbackUnavailability = false;
772772
auto platform = targetPlatform(module->getASTContext().LangOpts);
773-
for (auto *attr : decl->getAttrs()) {
774-
if (auto *ava = dyn_cast<AvailableAttr>(attr)) {
775-
if (ava->getPlatform() == PlatformKind::none) {
776-
hasFallbackUnavailability = ava->isUnconditionallyUnavailable();
777-
continue;
778-
}
779-
if (ava->getPlatform() != platform)
780-
continue;
781-
unavailable = ava->isUnconditionallyUnavailable();
782-
if (ava->Introduced)
783-
introduced = ava->Introduced->getAsString();
784-
if (ava->Obsoleted)
785-
obsoleted = ava->Obsoleted->getAsString();
773+
for (auto attr : decl->getSemanticAvailableAttrs()) {
774+
if (!attr.isPlatformSpecific()) {
775+
hasFallbackUnavailability = attr.isUnconditionallyUnavailable();
776+
continue;
786777
}
778+
if (attr.getPlatform() != platform)
779+
continue;
780+
unavailable = attr.isUnconditionallyUnavailable();
781+
if (attr.getIntroduced())
782+
introduced = attr.getIntroduced()->getAsString();
783+
if (attr.getObsoleted())
784+
obsoleted = attr.getObsoleted()->getAsString();
787785
}
788786
return {introduced, obsoleted,
789787
unavailable.value_or(hasFallbackUnavailability)};

0 commit comments

Comments
 (0)