[clang-tools-extra] [modularize] Use std::tie to implement operator< (NFC) (PR #146220)

Kazu Hirata via cfe-commits cfe-commits at lists.llvm.org
Sat Jun 28 08:48:53 PDT 2025


https://github.com/kazutakahirata created https://github.com/llvm/llvm-project/pull/146220

std::tie clearly expresses the intent while slightly shortening the
code.


>From 5a7e851dd568fe212ad0d497b3b090318cfc8857 Mon Sep 17 00:00:00 2001
From: Kazu Hirata <kazu at google.com>
Date: Fri, 27 Jun 2025 22:10:27 -0700
Subject: [PATCH] [modularize] Use std::tie to implement operator< (NFC)

std::tie clearly expresses the intent while slightly shortening the
code.
---
 clang-tools-extra/modularize/Modularize.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/clang-tools-extra/modularize/Modularize.cpp b/clang-tools-extra/modularize/Modularize.cpp
index 2a90c5e3f6782..1da531a4aefa4 100644
--- a/clang-tools-extra/modularize/Modularize.cpp
+++ b/clang-tools-extra/modularize/Modularize.cpp
@@ -459,7 +459,7 @@ struct HeaderEntry {
     return !(X == Y);
   }
   friend bool operator<(const HeaderEntry &X, const HeaderEntry &Y) {
-    return X.Loc < Y.Loc || (X.Loc == Y.Loc && X.Name < Y.Name);
+    return std::tie(X.Loc, X.Name) < std::tie(Y.Loc, Y.Name);
   }
   friend bool operator>(const HeaderEntry &X, const HeaderEntry &Y) {
     return Y < X;



More information about the cfe-commits mailing list