diff --git a/lib/SILGen/SILGenExpr.cpp b/lib/SILGen/SILGenExpr.cpp index e9a17918df1..d8507e102e4 100644 --- a/lib/SILGen/SILGenExpr.cpp +++ b/lib/SILGen/SILGenExpr.cpp @@ -2816,7 +2816,7 @@ RValue RValueEmitter::visitObjCSelectorExpr(ObjCSelectorExpr *e, SGFContext C) { for (auto member : selectorDecl->getMembers()) { if (auto var = dyn_cast(member)) { if (!var->isStatic() && var->hasStorage()) { - selectorMemberTy = var->getInterfaceType()->getRValueType(); + selectorMemberTy = var->getInterfaceType(); break; } } diff --git a/lib/Sema/CSDiag.cpp b/lib/Sema/CSDiag.cpp index 5eb1c58b7a3..94de183b790 100644 --- a/lib/Sema/CSDiag.cpp +++ b/lib/Sema/CSDiag.cpp @@ -5265,7 +5265,7 @@ bool FailureDiagnosis::diagnoseArgumentGenericRequirements( // requirements e.g. . for (unsigned i = 0, e = bindings.size(); i != e; ++i) { auto param = params[i]; - auto paramType = param.getType()->getInOutObjectType(); + auto paramType = param.getPlainType(); auto archetype = paramType->getAs(); if (!archetype) diff --git a/tools/SourceKit/lib/SwiftLang/SwiftSourceDocInfo.cpp b/tools/SourceKit/lib/SwiftLang/SwiftSourceDocInfo.cpp index d51a1ecb6a4..87b60272c47 100644 --- a/tools/SourceKit/lib/SwiftLang/SwiftSourceDocInfo.cpp +++ b/tools/SourceKit/lib/SwiftLang/SwiftSourceDocInfo.cpp @@ -384,9 +384,7 @@ static Type findBaseTypeForReplacingArchetype(const ValueDecl *VD, const Type Ty return Type(); // Find the nominal type decl related to VD. - NominalTypeDecl *NTD = VD->getDeclContext()-> - getAsNominalTypeOrNominalTypeExtensionContext(); - if (!NTD) + if (!VD->getDeclContext()->isTypeContext()) return Type(); return Ty->getRValueType()->getRValueInstanceType();