================
@@ -1463,6 +1468,67 @@ bool Sema::CheckTypeTraitArity(unsigned Arity, 
SourceLocation Loc, size_t N) {
   return true;
 }
 
+static ComparisonCategoryResult EvaluateTypeOrder(Sema &S, QualType LHS,
+                                                  QualType RHS) {
+  if (S.Context.hasSameType(LHS, RHS))
+    return ComparisonCategoryResult::Equal;
+
+  std::unique_ptr<MangleContext> MC(S.Context.createMangleContext());
+  SmallString<64> LhsName, RhsName;
+  {
+    llvm::raw_svector_ostream LhsOut(LhsName), RhsOut(RhsName);
+    MC->mangleCanonicalTypeName(LHS, LhsOut);
+    MC->mangleCanonicalTypeName(RHS, RhsOut);
+  }
+
+  int Result = LhsName.compare(RhsName);
+  return Result == 0  ? ComparisonCategoryResult::Equal
----------------
tbaederr wrote:

I'd really prefer some if statements over nested conditional operators.

https://github.com/llvm/llvm-project/pull/216462
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to