Skip to content

Commit d32f6ab

Browse files
committed
[NFC] Explain why isDataEqual is necessary; inline type aliases.
1 parent 74be3aa commit d32f6ab

File tree

1 file changed

+7
-6
lines changed

1 file changed

+7
-6
lines changed

clang/include/clang/StaticAnalyzer/Core/PathSensitive/SymbolManager.h

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -719,10 +719,8 @@ class SymbolVisitor {
719719
template <>
720720
struct ::llvm::ImutContainerInfo<clang::ento::SymbolRef>
721721
: public ImutProfileInfo<clang::ento::SymbolRef> {
722-
using value_type =
723-
typename ImutProfileInfo<clang::ento::SymbolRef>::value_type;
724-
using value_type_ref =
725-
typename ImutProfileInfo<clang::ento::SymbolRef>::value_type_ref;
722+
using value_type = clang::ento::SymbolRef;
723+
using value_type_ref = clang::ento::SymbolRef;
726724
using key_type = value_type;
727725
using key_type_ref = value_type_ref;
728726
using data_type = bool;
@@ -731,14 +729,17 @@ struct ::llvm::ImutContainerInfo<clang::ento::SymbolRef>
731729
static key_type_ref KeyOfValue(value_type_ref D) { return D; }
732730
static data_type_ref DataOfValue(value_type_ref) { return true; }
733731

734-
static bool isEqual(key_type_ref LHS, key_type_ref RHS) {
732+
static bool isEqual(clang::ento::SymbolRef LHS, clang::ento::SymbolRef RHS) {
735733
return LHS->getSymbolID() == RHS->getSymbolID();
736734
}
737735

738-
static bool isLess(key_type_ref LHS, key_type_ref RHS) {
736+
static bool isLess(clang::ento::SymbolRef LHS, clang::ento::SymbolRef RHS) {
739737
return LHS->getSymbolID() < RHS->getSymbolID();
740738
}
741739

740+
// This might seem redundant, but it is required because of the way
741+
// ImmutableSet is implemented through AVLTree:
742+
// same as ImmutableMap, but with a non-informative "data".
742743
static bool isDataEqual(data_type_ref, data_type_ref) { return true; }
743744
};
744745

0 commit comments

Comments
 (0)