From: Kaelyn Uhrain Date: Thu, 19 Jan 2012 00:33:34 +0000 (+0000) Subject: Remove the now-unused CorrectTypoContext enum. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=bcdd7d92883d771106e54357245733358eac9672;p=clang Remove the now-unused CorrectTypoContext enum. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148441 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/clang/Sema/Sema.h b/include/clang/Sema/Sema.h index c3bdad80df..1320a05176 100644 --- a/include/clang/Sema/Sema.h +++ b/include/clang/Sema/Sema.h @@ -1833,41 +1833,6 @@ public: VisibleDeclConsumer &Consumer, bool IncludeGlobalScope = true); - /// \brief The context in which typo-correction occurs. - /// - /// The typo-correction context affects which keywords (if any) are - /// considered when trying to correct for typos. - enum CorrectTypoContext { - /// \brief An unknown context, where any keyword might be valid. - CTC_Unknown, - /// \brief A context where no keywords are used (e.g. we expect an actual - /// name). - CTC_NoKeywords, - /// \brief A context where we're correcting a type name. - CTC_Type, - /// \brief An expression context. - CTC_Expression, - /// \brief A type cast, or anything else that can be followed by a '<'. - CTC_CXXCasts, - /// \brief A member lookup context. - CTC_MemberLookup, - /// \brief An Objective-C ivar lookup context (e.g., self->ivar). - CTC_ObjCIvarLookup, - /// \brief An Objective-C property lookup context (e.g., self.prop). - CTC_ObjCPropertyLookup, - /// \brief The receiver of an Objective-C message send within an - /// Objective-C method where 'super' is a valid keyword. - CTC_ObjCMessageReceiver - }; - - TypoCorrection CorrectTypo(const DeclarationNameInfo &Typo, - Sema::LookupNameKind LookupKind, - Scope *S, CXXScopeSpec *SS, - DeclContext *MemberContext = 0, - bool EnteringContext = false, - CorrectTypoContext CTC = CTC_Unknown, - const ObjCObjectPointerType *OPT = 0); - TypoCorrection CorrectTypo(const DeclarationNameInfo &Typo, Sema::LookupNameKind LookupKind, Scope *S, CXXScopeSpec *SS, diff --git a/lib/Sema/SemaLookup.cpp b/lib/Sema/SemaLookup.cpp index 96137f7148..4459098179 100644 --- a/lib/Sema/SemaLookup.cpp +++ b/lib/Sema/SemaLookup.cpp @@ -3503,77 +3503,6 @@ static void AddKeywordsToConsumer(Sema &SemaRef, } } -namespace { - -// Simple CorrectionCandidateCallback class that sets the keyword flags based -// on a given CorrectTypoContext, but does not perform any extra validation -// of typo correction candidates. -class CorrectTypoContextReplacementCCC : public CorrectionCandidateCallback { - public: - CorrectTypoContextReplacementCCC( - Sema &SemaRef, Sema::CorrectTypoContext CTC = Sema::CTC_Unknown) { - WantTypeSpecifiers = false; - WantExpressionKeywords = false; - WantCXXNamedCasts = false; - WantRemainingKeywords = false; - switch (CTC) { - case Sema::CTC_Unknown: - WantTypeSpecifiers = true; - WantExpressionKeywords = true; - WantCXXNamedCasts = true; - WantRemainingKeywords = true; - if (ObjCMethodDecl *Method = SemaRef.getCurMethodDecl()) - WantObjCSuper = Method->getClassInterface() && - Method->getClassInterface()->getSuperClass(); - break; - - case Sema::CTC_Type: - WantTypeSpecifiers = true; - break; - - case Sema::CTC_ObjCMessageReceiver: - WantObjCSuper = true; - // Fall through to handle message receivers like expressions. - - case Sema::CTC_Expression: - if (SemaRef.getLangOptions().CPlusPlus) - WantTypeSpecifiers = true; - WantExpressionKeywords = true; - // Fall through to get C++ named casts. - - case Sema::CTC_CXXCasts: - WantCXXNamedCasts = true; - break; - - case Sema::CTC_MemberLookup: - case Sema::CTC_NoKeywords: - case Sema::CTC_ObjCPropertyLookup: - break; - - case Sema::CTC_ObjCIvarLookup: - IsObjCIvarLookup = true; - break; - } - } -}; - -} - -/// \brief Compatibility wrapper for call sites that pass a CorrectTypoContext -/// value to CorrectTypo instead of providing a callback object. -TypoCorrection Sema::CorrectTypo(const DeclarationNameInfo &TypoName, - Sema::LookupNameKind LookupKind, - Scope *S, CXXScopeSpec *SS, - DeclContext *MemberContext, - bool EnteringContext, - CorrectTypoContext CTC, - const ObjCObjectPointerType *OPT) { - CorrectTypoContextReplacementCCC CTCVerifier(*this, CTC); - - return CorrectTypo(TypoName, LookupKind, S, SS, &CTCVerifier, MemberContext, - EnteringContext, OPT); -} - /// \brief Try to "correct" a typo in the source code by finding /// visible declarations whose names are similar to the name that was /// present in the source code. @@ -3708,7 +3637,7 @@ TypoCorrection Sema::CorrectTypo(const DeclarationNameInfo &TypoName, } } - CorrectTypoContextReplacementCCC DefaultCCC(*this); + CorrectionCandidateCallback DefaultCCC; AddKeywordsToConsumer(*this, Consumer, S, CCC ? *CCC : DefaultCCC); // If we haven't found anything, we're done.