diff --git a/clang/lib/Lex/ModuleMap.cpp b/clang/lib/Lex/ModuleMap.cpp index 1d67e275cb477..7bc89b2fed36b 100644 --- a/clang/lib/Lex/ModuleMap.cpp +++ b/clang/lib/Lex/ModuleMap.cpp @@ -49,6 +49,7 @@ #include #include #include +#include #include using namespace clang; @@ -2511,7 +2512,8 @@ void ModuleMapParser::parseHeaderDecl(MMToken::TokenKind LeadingToken, static bool compareModuleHeaders(const Module::Header &A, const Module::Header &B) { - return A.NameAsWritten < B.NameAsWritten; + return std::tie(A.NameAsWritten, A.PathRelativeToRootModuleDirectory) < + std::tie(B.NameAsWritten, B.PathRelativeToRootModuleDirectory); } /// Parse an umbrella directory declaration.