This is an archive of the discontinued LLVM Phabricator instance.

[Analyzer] Model return values of container insert and delete operations
Needs ReviewPublic

Authored by baloghadamsoftware on Mar 31 2020, 2:29 AM.

Details

Summary

Insert and delete operations of insert(), erase() (plus insert_after() and erase_after() for std::forward_list-like containers were not modeled yet. This patch fixes this issue.

Diff Detail

Event Timeline

It seems like we could model here emplace and emplace_after exactly the same way we do with insert and insert_after, couldn't we? Perhaps that could go into this patch too.

It seems like we could model here emplace and emplace_after exactly the same way we do with insert and insert_after, couldn't we? Perhaps that could go into this patch too.

They are already in this patch (see the tests and the CallDescriptionMap), but they share their handing function with insert and insert_after.

It seems like we could model here emplace and emplace_after exactly the same way we do with insert and insert_after, couldn't we? Perhaps that could go into this patch too.

They are already in this patch (see the tests and the CallDescriptionMap), but they share their handing function with insert and insert_after.

Ok, I missed that.

Protection agains Unknown return values added.