@@ -28,14 +28,12 @@ using namespace swift;
2828TypeRefinementContext::TypeRefinementContext (ASTContext &Ctx, IntroNode Node,
2929 TypeRefinementContext *Parent,
3030 SourceRange SrcRange,
31- const AvailabilityContext &Info,
32- const AvailabilityContext &InfoExplicit)
33- : Node(Node), SrcRange(SrcRange), AvailabilityInfo(Info),
34- AvailabilityInfoExplicit(InfoExplicit) {
31+ const AvailabilityContext &Info)
32+ : Node(Node), SrcRange(SrcRange), AvailabilityInfo(Info) {
3533 if (Parent) {
3634 assert (SrcRange.isValid ());
3735 Parent->addChild (this );
38- assert (InfoExplicit .isContainedIn (Parent->getAvailabilityInfoExplicit ()));
36+ assert (Info .isContainedIn (Parent->getAvailabilityInfo ()));
3937 }
4038 Ctx.addDestructorCleanup (Children);
4139}
@@ -48,20 +46,18 @@ TypeRefinementContext::createRoot(SourceFile *SF,
4846 ASTContext &Ctx = SF->getASTContext ();
4947 return new (Ctx)
5048 TypeRefinementContext (Ctx, SF,
51- /* Parent=*/ nullptr , SourceRange (), Info,
52- AvailabilityContext::alwaysAvailable ());
49+ /* Parent=*/ nullptr , SourceRange (), Info);
5350}
5451
5552TypeRefinementContext *
5653TypeRefinementContext::createForDecl (ASTContext &Ctx, Decl *D,
5754 TypeRefinementContext *Parent,
5855 const AvailabilityContext &Info,
59- const AvailabilityContext &InfoExplicit,
6056 SourceRange SrcRange) {
6157 assert (D);
6258 assert (Parent);
6359 return new (Ctx)
64- TypeRefinementContext (Ctx, D, Parent, SrcRange, Info, InfoExplicit );
60+ TypeRefinementContext (Ctx, D, Parent, SrcRange, Info);
6561}
6662
6763TypeRefinementContext *
@@ -72,7 +68,7 @@ TypeRefinementContext::createForIfStmtThen(ASTContext &Ctx, IfStmt *S,
7268 assert (Parent);
7369 return new (Ctx)
7470 TypeRefinementContext (Ctx, IntroNode (S, /* IsThen=*/ true ), Parent,
75- S->getThenStmt ()->getSourceRange (), Info, Info );
71+ S->getThenStmt ()->getSourceRange (), Info);
7672}
7773
7874TypeRefinementContext *
@@ -83,7 +79,7 @@ TypeRefinementContext::createForIfStmtElse(ASTContext &Ctx, IfStmt *S,
8379 assert (Parent);
8480 return new (Ctx)
8581 TypeRefinementContext (Ctx, IntroNode (S, /* IsThen=*/ false ), Parent,
86- S->getElseStmt ()->getSourceRange (), Info, Info );
82+ S->getElseStmt ()->getSourceRange (), Info);
8783}
8884
8985TypeRefinementContext *
@@ -96,7 +92,7 @@ TypeRefinementContext::createForConditionFollowingQuery(ASTContext &Ctx,
9692 assert (Parent);
9793 SourceRange Range (PAI->getEndLoc (), LastElement.getEndLoc ());
9894 return new (Ctx) TypeRefinementContext (Ctx, PAI, Parent, Range,
99- Info, Info );
95+ Info);
10096}
10197
10298TypeRefinementContext *
@@ -111,7 +107,7 @@ TypeRefinementContext::createForGuardStmtFallthrough(ASTContext &Ctx,
111107 SourceRange Range (RS->getEndLoc (), ContainingBraceStmt->getEndLoc ());
112108 return new (Ctx) TypeRefinementContext (Ctx,
113109 IntroNode (RS, /* IsFallthrough=*/ true ),
114- Parent, Range, Info, Info );
110+ Parent, Range, Info);
115111}
116112
117113TypeRefinementContext *
@@ -122,7 +118,7 @@ TypeRefinementContext::createForGuardStmtElse(ASTContext &Ctx, GuardStmt *RS,
122118 assert (Parent);
123119 return new (Ctx)
124120 TypeRefinementContext (Ctx, IntroNode (RS, /* IsFallthrough=*/ false ), Parent,
125- RS->getBody ()->getSourceRange (), Info, Info );
121+ RS->getBody ()->getSourceRange (), Info);
126122}
127123
128124TypeRefinementContext *
@@ -132,7 +128,7 @@ TypeRefinementContext::createForWhileStmtBody(ASTContext &Ctx, WhileStmt *S,
132128 assert (S);
133129 assert (Parent);
134130 return new (Ctx) TypeRefinementContext (
135- Ctx, S, Parent, S->getBody ()->getSourceRange (), Info, Info );
131+ Ctx, S, Parent, S->getBody ()->getSourceRange (), Info);
136132}
137133
138134// Only allow allocation of TypeRefinementContext using the allocator in
@@ -300,7 +296,6 @@ void TypeRefinementContext::print(raw_ostream &OS, SourceManager &SrcMgr,
300296 OS << " (" << getReasonName (getReason ());
301297
302298 OS << " versions=" << AvailabilityInfo.getOSVersion ().getAsString ();
303- OS << " explicit=" << AvailabilityInfoExplicit.getOSVersion ().getAsString ();
304299
305300 if (getReason () == Reason::Decl) {
306301 Decl *D = Node.getAsDecl ();
0 commit comments