diff options
author | Kristof Umann <dkszelethus@gmail.com> | 2018-09-23 09:16:27 +0000 |
---|---|---|
committer | Kristof Umann <dkszelethus@gmail.com> | 2018-09-23 09:16:27 +0000 |
commit | 82eeca363acbdb2c844f6372a433e2acb597ef61 (patch) | |
tree | 0ba247ebf1f543243c9933755d54505b4480206a /clang/lib/StaticAnalyzer/Checkers/UninitializedObject/UninitializedObjectChecker.cpp | |
parent | b2de4b39be8475c4bb123b787ebbc875ac9b20d8 (diff) | |
download | bcm5719-llvm-82eeca363acbdb2c844f6372a433e2acb597ef61.tar.gz bcm5719-llvm-82eeca363acbdb2c844f6372a433e2acb597ef61.zip |
[analyzer][UninitializedObjectChecker] Using the new const methods of ImmutableList
Differential Revision: https://reviews.llvm.org/D51886
llvm-svn: 342834
Diffstat (limited to 'clang/lib/StaticAnalyzer/Checkers/UninitializedObject/UninitializedObjectChecker.cpp')
-rw-r--r-- | clang/lib/StaticAnalyzer/Checkers/UninitializedObject/UninitializedObjectChecker.cpp | 25 |
1 files changed, 8 insertions, 17 deletions
diff --git a/clang/lib/StaticAnalyzer/Checkers/UninitializedObject/UninitializedObjectChecker.cpp b/clang/lib/StaticAnalyzer/Checkers/UninitializedObject/UninitializedObjectChecker.cpp index 711b43f3b58..50ab7c0a0e8 100644 --- a/clang/lib/StaticAnalyzer/Checkers/UninitializedObject/UninitializedObjectChecker.cpp +++ b/clang/lib/StaticAnalyzer/Checkers/UninitializedObject/UninitializedObjectChecker.cpp @@ -339,14 +339,6 @@ bool FindUninitializedFields::isPrimitiveUninit(const SVal &V) { // Methods for FieldChainInfo. //===----------------------------------------------------------------------===// -const FieldRegion *FieldChainInfo::getUninitRegion() const { - assert(!Chain.isEmpty() && "Empty fieldchain!"); - - // ImmutableList::getHead() isn't a const method, hence the not too nice - // implementation. - return (*Chain.begin()).getRegion(); -} - bool FieldChainInfo::contains(const FieldRegion *FR) const { for (const FieldNode &Node : Chain) { if (Node.isSameRegion(FR)) @@ -360,7 +352,7 @@ bool FieldChainInfo::contains(const FieldRegion *FR) const { /// recursive function to print the fieldchain correctly. The last element in /// the chain is to be printed by `FieldChainInfo::print`. static void printTail(llvm::raw_ostream &Out, - const FieldChainInfo::FieldChainImpl *L); + const FieldChainInfo::FieldChain L); // FIXME: This function constructs an incorrect string in the following case: // @@ -379,8 +371,7 @@ void FieldChainInfo::printNoteMsg(llvm::raw_ostream &Out) const { if (Chain.isEmpty()) return; - const FieldChainImpl *L = Chain.getInternalPointer(); - const FieldNode &LastField = L->getHead(); + const FieldNode &LastField = getHead(); LastField.printNoteMsg(Out); Out << '\''; @@ -389,20 +380,20 @@ void FieldChainInfo::printNoteMsg(llvm::raw_ostream &Out) const { Node.printPrefix(Out); Out << "this->"; - printTail(Out, L->getTail()); + printTail(Out, Chain.getTail()); LastField.printNode(Out); Out << '\''; } static void printTail(llvm::raw_ostream &Out, - const FieldChainInfo::FieldChainImpl *L) { - if (!L) + const FieldChainInfo::FieldChain L) { + if (L.isEmpty()) return; - printTail(Out, L->getTail()); + printTail(Out, L.getTail()); - L->getHead().printNode(Out); - L->getHead().printSeparator(Out); + L.getHead().printNode(Out); + L.getHead().printSeparator(Out); } //===----------------------------------------------------------------------===// |