@@ -2109,22 +2109,35 @@ Type RawLayoutAttr::getResolvedCountType(StructDecl *sd) const {
2109
2109
}
2110
2110
2111
2111
AvailableAttr::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,
2114
2114
const llvm::VersionTuple &Introduced, SourceRange IntroducedRange,
2115
2115
const llvm::VersionTuple &Deprecated, SourceRange DeprecatedRange,
2116
2116
const llvm::VersionTuple &Obsoleted, SourceRange ObsoletedRange,
2117
2117
bool Implicit, bool IsSPI)
2118
2118
: 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) {
2123
2123
Bits.AvailableAttr .Kind = static_cast <uint8_t >(Kind);
2124
- Bits.AvailableAttr .HasComputedSemanticAttr = false ;
2125
2124
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);
2128
2141
Bits.AvailableAttr .IsSPI = IsSPI;
2129
2142
}
2130
2143
@@ -2133,7 +2146,7 @@ AvailableAttr *AvailableAttr::createUniversallyUnavailable(ASTContext &C,
2133
2146
StringRef Rename) {
2134
2147
return new (C) AvailableAttr (
2135
2148
SourceLoc (), SourceRange (), AvailabilityDomain::forUniversal (),
2136
- Kind::Unavailable, Message, Rename,
2149
+ SourceLoc (), Kind::Unavailable, Message, Rename,
2137
2150
/* Introduced=*/ {}, SourceRange (), /* Deprecated=*/ {}, SourceRange (),
2138
2151
/* Obsoleted=*/ {}, SourceRange (),
2139
2152
/* Implicit=*/ false ,
@@ -2145,7 +2158,7 @@ AvailableAttr *AvailableAttr::createUniversallyDeprecated(ASTContext &C,
2145
2158
StringRef Rename) {
2146
2159
return new (C) AvailableAttr (
2147
2160
SourceLoc (), SourceRange (), AvailabilityDomain::forUniversal (),
2148
- Kind::Deprecated, Message, Rename,
2161
+ SourceLoc (), Kind::Deprecated, Message, Rename,
2149
2162
/* Introduced=*/ {}, SourceRange (), /* Deprecated=*/ {}, SourceRange (),
2150
2163
/* Obsoleted=*/ {}, SourceRange (),
2151
2164
/* Implicit=*/ false ,
@@ -2157,7 +2170,7 @@ AvailableAttr *AvailableAttr::createUnavailableInSwift(ASTContext &C,
2157
2170
StringRef Rename) {
2158
2171
return new (C) AvailableAttr (
2159
2172
SourceLoc (), SourceRange (), AvailabilityDomain::forSwiftLanguage (),
2160
- Kind::Unavailable, Message, Rename,
2173
+ SourceLoc (), Kind::Unavailable, Message, Rename,
2161
2174
/* Introduced=*/ {}, SourceRange (), /* Deprecated=*/ {}, SourceRange (),
2162
2175
/* Obsoleted=*/ {}, SourceRange (),
2163
2176
/* Implicit=*/ false ,
@@ -2169,7 +2182,7 @@ AvailableAttr *AvailableAttr::createSwiftLanguageModeVersioned(
2169
2182
llvm::VersionTuple Introduced, llvm::VersionTuple Obsoleted) {
2170
2183
return new (C) AvailableAttr (
2171
2184
SourceLoc (), SourceRange (), AvailabilityDomain::forSwiftLanguage (),
2172
- Kind::Default, Message, Rename, Introduced, SourceRange (),
2185
+ SourceLoc (), Kind::Default, Message, Rename, Introduced, SourceRange (),
2173
2186
/* Deprecated=*/ {}, SourceRange (), Obsoleted, SourceRange (),
2174
2187
/* Implicit=*/ false ,
2175
2188
/* SPI=*/ false );
@@ -2181,8 +2194,8 @@ AvailableAttr *AvailableAttr::createPlatformVersioned(
2181
2194
llvm::VersionTuple Obsoleted) {
2182
2195
return new (C) AvailableAttr (
2183
2196
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 (),
2186
2199
/* Implicit=*/ false ,
2187
2200
/* SPI=*/ false );
2188
2201
}
@@ -2195,8 +2208,8 @@ bool BackDeployedAttr::isActivePlatform(const ASTContext &ctx,
2195
2208
AvailableAttr *AvailableAttr::clone (ASTContext &C, bool implicit) const {
2196
2209
return new (C) AvailableAttr (
2197
2210
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,
2200
2213
implicit ? SourceRange () : DeprecatedRange, Obsoleted,
2201
2214
implicit ? SourceRange () : ObsoletedRange, implicit, isSPI ());
2202
2215
}
0 commit comments