https://github.com/owenca created 
https://github.com/llvm/llvm-project/pull/140835

None

>From ca6a78c3c078fca61fe5ae60566adc4bf17503d2 Mon Sep 17 00:00:00 2001
From: Owen Pan <owenpi...@gmail.com>
Date: Tue, 20 May 2025 19:45:15 -0700
Subject: [PATCH] [clang-format][NFC] Minor efficiency cleanup

---
 clang/lib/Format/FormatToken.h      |  4 +++-
 clang/lib/Format/TokenAnnotator.cpp | 24 +++++++-----------------
 2 files changed, 10 insertions(+), 18 deletions(-)

diff --git a/clang/lib/Format/FormatToken.h b/clang/lib/Format/FormatToken.h
index e9d41183b5ebe..94014aee3221f 100644
--- a/clang/lib/Format/FormatToken.h
+++ b/clang/lib/Format/FormatToken.h
@@ -712,8 +712,10 @@ struct FormatToken {
   }
 
   bool isObjCLifetimeQualifier(const FormatStyle &Style) const {
-    if (Style.Language != FormatStyle::LK_ObjC || !TokenText.starts_with("__"))
+    if (Style.Language != FormatStyle::LK_ObjC || isNot(tok::identifier) ||
+        !TokenText.starts_with("__")) {
       return false;
+    }
     const auto Qualifier = TokenText.substr(2);
     return Qualifier == "autoreleasing" || Qualifier == "strong" ||
            Qualifier == "weak" || Qualifier == "unsafe_unretained";
diff --git a/clang/lib/Format/TokenAnnotator.cpp 
b/clang/lib/Format/TokenAnnotator.cpp
index 542c362ccacae..23c26c821bec9 100644
--- a/clang/lib/Format/TokenAnnotator.cpp
+++ b/clang/lib/Format/TokenAnnotator.cpp
@@ -263,8 +263,7 @@ class AnnotatingParser {
             Previous->setType(TT_SelectorName);
           }
         }
-      }
-      if (Style.isTableGen()) {
+      } else if (Style.isTableGen()) {
         if (CurrentToken->isOneOf(tok::comma, tok::equal)) {
           // They appear as separators. Unless they are not in class 
definition.
           next();
@@ -3016,12 +3015,13 @@ class AnnotatingParser {
       return TT_BinaryOperator;
 
     const FormatToken *NextToken = Tok.getNextNonComment();
+    if (!NextToken)
+      return TT_PointerOrReference;
 
-    if (InTemplateArgument && NextToken && NextToken->is(tok::kw_noexcept))
+    if (InTemplateArgument && NextToken->is(tok::kw_noexcept))
       return TT_BinaryOperator;
 
-    if (!NextToken ||
-        NextToken->isOneOf(tok::arrow, tok::equal, tok::comma, tok::r_paren,
+    if (NextToken->isOneOf(tok::arrow, tok::equal, tok::comma, tok::r_paren,
                            TT_RequiresClause) ||
         (NextToken->is(tok::kw_noexcept) && !IsExpression) ||
         NextToken->canBePointerOrReferenceQualifier() ||
@@ -6519,18 +6519,8 @@ TokenAnnotator::getTokenReferenceAlignment(const 
FormatToken &Reference) const {
 FormatStyle::PointerAlignmentStyle
 TokenAnnotator::getTokenPointerOrReferenceAlignment(
     const FormatToken &PointerOrReference) const {
-  if (PointerOrReference.isOneOf(tok::amp, tok::ampamp)) {
-    switch (Style.ReferenceAlignment) {
-    case FormatStyle::RAS_Pointer:
-      return Style.PointerAlignment;
-    case FormatStyle::RAS_Left:
-      return FormatStyle::PAS_Left;
-    case FormatStyle::RAS_Right:
-      return FormatStyle::PAS_Right;
-    case FormatStyle::RAS_Middle:
-      return FormatStyle::PAS_Middle;
-    }
-  }
+  if (PointerOrReference.isOneOf(tok::amp, tok::ampamp))
+    return getTokenReferenceAlignment(PointerOrReference);
   assert(PointerOrReference.is(tok::star));
   return Style.PointerAlignment;
 }

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to