@@ -2109,22 +2109,35 @@ Type RawLayoutAttr::getResolvedCountType(StructDecl *sd) const {
21092109}
21102110
21112111AvailableAttr::AvailableAttr (
2112- SourceLoc AtLoc, SourceRange Range, const AvailabilityDomain & Domain,
2113- Kind Kind, StringRef Message, StringRef Rename,
2112+ SourceLoc AtLoc, SourceRange Range, AvailabilityDomain Domain,
2113+ SourceLoc DomainLoc, Kind Kind, StringRef Message, StringRef Rename,
21142114 const llvm::VersionTuple &Introduced, SourceRange IntroducedRange,
21152115 const llvm::VersionTuple &Deprecated, SourceRange DeprecatedRange,
21162116 const llvm::VersionTuple &Obsoleted, SourceRange ObsoletedRange,
21172117 bool Implicit, bool IsSPI)
21182118 : DeclAttribute(DeclAttrKind::Available, AtLoc, Range, Implicit),
2119- Domain(Domain), Message(Message ), Rename(Rename ), Introduced(Introduced ),
2120- IntroducedRange(IntroducedRange ), Deprecated(Deprecated ),
2121- DeprecatedRange(DeprecatedRange ), Obsoleted(Obsoleted ),
2122- ObsoletedRange(ObsoletedRange) {
2119+ Domain(Domain), DomainLoc(DomainLoc ), Message(Message ), Rename(Rename ),
2120+ Introduced(Introduced ), IntroducedRange(IntroducedRange ),
2121+ Deprecated(Deprecated ), DeprecatedRange(DeprecatedRange ),
2122+ Obsoleted(Obsoleted), ObsoletedRange(ObsoletedRange) {
21232123 Bits.AvailableAttr .Kind = static_cast <uint8_t >(Kind);
2124- Bits.AvailableAttr .HasComputedSemanticAttr = false ;
21252124 Bits.AvailableAttr .HasDomain = true ;
2126- Bits.AvailableAttr .HasComputedRenamedDecl = false ;
2127- Bits.AvailableAttr .HasRenamedDecl = false ;
2125+ Bits.AvailableAttr .IsSPI = IsSPI;
2126+ }
2127+
2128+ AvailableAttr::AvailableAttr (
2129+ SourceLoc AtLoc, SourceRange Range, StringRef DomainString,
2130+ SourceLoc DomainLoc, Kind Kind, StringRef Message, StringRef Rename,
2131+ const llvm::VersionTuple &Introduced, SourceRange IntroducedRange,
2132+ const llvm::VersionTuple &Deprecated, SourceRange DeprecatedRange,
2133+ const llvm::VersionTuple &Obsoleted, SourceRange ObsoletedRange,
2134+ bool Implicit, bool IsSPI)
2135+ : DeclAttribute(DeclAttrKind::Available, AtLoc, Range, Implicit),
2136+ DomainString(DomainString), DomainLoc(DomainLoc), Message(Message),
2137+ Rename(Rename), Introduced(Introduced), IntroducedRange(IntroducedRange),
2138+ Deprecated(Deprecated), DeprecatedRange(DeprecatedRange),
2139+ Obsoleted(Obsoleted), ObsoletedRange(ObsoletedRange) {
2140+ Bits.AvailableAttr .Kind = static_cast <uint8_t >(Kind);
21282141 Bits.AvailableAttr .IsSPI = IsSPI;
21292142}
21302143
@@ -2133,7 +2146,7 @@ AvailableAttr *AvailableAttr::createUniversallyUnavailable(ASTContext &C,
21332146 StringRef Rename) {
21342147 return new (C) AvailableAttr (
21352148 SourceLoc (), SourceRange (), AvailabilityDomain::forUniversal (),
2136- Kind::Unavailable, Message, Rename,
2149+ SourceLoc (), Kind::Unavailable, Message, Rename,
21372150 /* Introduced=*/ {}, SourceRange (), /* Deprecated=*/ {}, SourceRange (),
21382151 /* Obsoleted=*/ {}, SourceRange (),
21392152 /* Implicit=*/ false ,
@@ -2145,7 +2158,7 @@ AvailableAttr *AvailableAttr::createUniversallyDeprecated(ASTContext &C,
21452158 StringRef Rename) {
21462159 return new (C) AvailableAttr (
21472160 SourceLoc (), SourceRange (), AvailabilityDomain::forUniversal (),
2148- Kind::Deprecated, Message, Rename,
2161+ SourceLoc (), Kind::Deprecated, Message, Rename,
21492162 /* Introduced=*/ {}, SourceRange (), /* Deprecated=*/ {}, SourceRange (),
21502163 /* Obsoleted=*/ {}, SourceRange (),
21512164 /* Implicit=*/ false ,
@@ -2157,7 +2170,7 @@ AvailableAttr *AvailableAttr::createUnavailableInSwift(ASTContext &C,
21572170 StringRef Rename) {
21582171 return new (C) AvailableAttr (
21592172 SourceLoc (), SourceRange (), AvailabilityDomain::forSwiftLanguage (),
2160- Kind::Unavailable, Message, Rename,
2173+ SourceLoc (), Kind::Unavailable, Message, Rename,
21612174 /* Introduced=*/ {}, SourceRange (), /* Deprecated=*/ {}, SourceRange (),
21622175 /* Obsoleted=*/ {}, SourceRange (),
21632176 /* Implicit=*/ false ,
@@ -2169,7 +2182,7 @@ AvailableAttr *AvailableAttr::createSwiftLanguageModeVersioned(
21692182 llvm::VersionTuple Introduced, llvm::VersionTuple Obsoleted) {
21702183 return new (C) AvailableAttr (
21712184 SourceLoc (), SourceRange (), AvailabilityDomain::forSwiftLanguage (),
2172- Kind::Default, Message, Rename, Introduced, SourceRange (),
2185+ SourceLoc (), Kind::Default, Message, Rename, Introduced, SourceRange (),
21732186 /* Deprecated=*/ {}, SourceRange (), Obsoleted, SourceRange (),
21742187 /* Implicit=*/ false ,
21752188 /* SPI=*/ false );
@@ -2181,8 +2194,8 @@ AvailableAttr *AvailableAttr::createPlatformVersioned(
21812194 llvm::VersionTuple Obsoleted) {
21822195 return new (C) AvailableAttr (
21832196 SourceLoc (), SourceRange (), AvailabilityDomain::forPlatform (Platform),
2184- Kind::Default, Message, Rename, Introduced, SourceRange (), Deprecated ,
2185- SourceRange (), Obsoleted, SourceRange (),
2197+ SourceLoc (), Kind::Default, Message, Rename, Introduced, SourceRange (),
2198+ Deprecated, SourceRange (), Obsoleted, SourceRange (),
21862199 /* Implicit=*/ false ,
21872200 /* SPI=*/ false );
21882201}
@@ -2195,8 +2208,8 @@ bool BackDeployedAttr::isActivePlatform(const ASTContext &ctx,
21952208AvailableAttr *AvailableAttr::clone (ASTContext &C, bool implicit) const {
21962209 return new (C) AvailableAttr (
21972210 implicit ? SourceLoc () : AtLoc, implicit ? SourceRange () : getRange (),
2198- Domain, getKind (), Message, Rename, Introduced ,
2199- implicit ? SourceRange () : IntroducedRange, Deprecated,
2211+ Domain, implicit ? SourceLoc () : DomainLoc, getKind (), Message, Rename,
2212+ Introduced, implicit ? SourceRange () : IntroducedRange, Deprecated,
22002213 implicit ? SourceRange () : DeprecatedRange, Obsoleted,
22012214 implicit ? SourceRange () : ObsoletedRange, implicit, isSPI ());
22022215}
0 commit comments