]> granicus.if.org Git - clang/commitdiff
Remove the now-unused CorrectTypoContext enum.
authorKaelyn Uhrain <rikka@google.com>
Thu, 19 Jan 2012 00:33:34 +0000 (00:33 +0000)
committerKaelyn Uhrain <rikka@google.com>
Thu, 19 Jan 2012 00:33:34 +0000 (00:33 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148441 91177308-0d34-0410-b5e6-96231b3b80d8

include/clang/Sema/Sema.h
lib/Sema/SemaLookup.cpp

index c3bdad80dfa99347f154b85431df24d4141ab1f4..1320a05176dcfe94414ae7b0a4af8311247f3a17 100644 (file)
@@ -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,
index 96137f7148041cfe6ee0ea45694038b8b552279c..44590981790933921a47d5e6bf215340515cb3c2 100644 (file)
@@ -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.