@@ -1172,21 +1172,20 @@ bool DeclAttribute::printImpl(ASTPrinter &Printer, const PrintOptions &Options,
1172
1172
}
1173
1173
1174
1174
case DeclAttrKind::Available: {
1175
- auto Attr = cast<AvailableAttr>(this );
1176
- auto SemanticAttr = D->getSemanticAvailableAttr (Attr);
1177
- if (!SemanticAttr)
1175
+ auto Attr = D->getSemanticAvailableAttr (cast<AvailableAttr>(this ));
1176
+ if (!Attr)
1178
1177
return false ;
1179
1178
1180
1179
if (Options.printPublicInterface () && Attr->isSPI ()) {
1181
- assert (Attr->hasPlatform ());
1182
- assert (Attr->Introduced .has_value ());
1180
+ assert (Attr->isPlatformSpecific ());
1181
+ assert (Attr->getIntroduced () .has_value ());
1183
1182
Printer.printAttrName (" @available" );
1184
1183
Printer << " (" ;
1185
- Printer << Attr->platformString ();
1184
+ Printer << Attr->getDomain (). getNameForAttributePrinting ();
1186
1185
Printer << " , unavailable)" ;
1187
1186
break ;
1188
1187
}
1189
- if (Attr->isForEmbedded ()) {
1188
+ if (Attr->getParsedAttr ()-> isForEmbedded ()) {
1190
1189
std::string atUnavailableInEmbedded =
1191
1190
(llvm::Twine (" @" ) + UNAVAILABLE_IN_EMBEDDED_ATTRNAME).str ();
1192
1191
Printer.printAttrName (atUnavailableInEmbedded);
@@ -1200,7 +1199,7 @@ bool DeclAttribute::printImpl(ASTPrinter &Printer, const PrintOptions &Options,
1200
1199
Printer.printAttrName (" @available" );
1201
1200
}
1202
1201
Printer << " (" ;
1203
- printAvailableAttr (D, *SemanticAttr , Printer, Options);
1202
+ printAvailableAttr (D, *Attr , Printer, Options);
1204
1203
Printer << " )" ;
1205
1204
break ;
1206
1205
}
0 commit comments