[PATCH] D100378: [AST] Use IntrusiveRefCntPtr for Introspection LocationCall.

Nathan James via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Wed Apr 14 00:37:13 PDT 2021


njames93 marked an inline comment as done.
njames93 added inline comments.


================
Comment at: clang/lib/Tooling/NodeIntrospection.cpp:60
+  if (LHS.first == RHS.first)
+    return LHS.second->name() < RHS.second->name();
+  return LHS.first < RHS.first;
----------------
dblaikie wrote:
> njames93 wrote:
> > This is a slight change in behaviour, The old implementation used the operator< on a `std::shared_ptr`.
> > That in turns boils down to a comparison on the raw pointer, which is less than ideal.
> Why is that less than ideal? Does the ordering need to be stable?
It's not strictly necessary that the ordering is stable. but when printing the contents of the map it would be nice if there was some obvious ordering. This also (partially) mimics the behaviour of the comparison for `std::pair<SourceRange, SharedLocationCall>`.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D100378/new/

https://reviews.llvm.org/D100378



More information about the cfe-commits mailing list